PHP上传文件时自动分配路径的方法


Posted in PHP onJanuary 09, 2015

本文实例讲述了PHP上传文件时自动分配路径的方法。分享给大家供大家参考。具体分析如下:

网站上传文件时,如果是小的企业站,放在一个目录还没问题,当网站大了,上传的文件多了,我们就不能放在同一个目录了,这里我们就来讲讲用PHP自动给上传的文件分配路径的方法。

PHP分配上传文件的路径实例
主要程序片段如下:

<?php    

/*数字方式分配路径*/    

function allotPath($id, $extend='jpg') {    

   $folders = str_split(sprintf("%012s", $id),3);    

   $folders[3] = $id;    

    

   return  '/'. join('/', $folders).'.'.$extend;    

}    

    

/*杂凑方式分配路径*/    

function allotHashPath($id, $extend='jpg') {    

   $folders = array_slice( str_split(md5($id),2), 0, 4);    

   $folders[] = $id;    

    

   return  '/'. join('/', $folders).'.'.$extend;    

}    

    

var_dump(allotPath(122333));    

// string(23) "/000/000/122/122333.jpg"    

    

var_dump(allotHashPath(122333));    

// string(23) "/9c/7c/c2/cd/122333.jpg"

这里我们讲的主要是数方式分配路径及杂凑方式分配路径,我们还可以根据日期来分配,这个问题感兴趣的朋友可以自己去实现。

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
怎样在php中使用PDF文档功能
Oct 09 PHP
php之字符串变相相减的代码
Mar 19 PHP
php检测文件编码的方法示例
Apr 25 PHP
php统计数组元素个数的方法
Jul 02 PHP
使用PHP实现下载CSS文件中的图片
Dec 06 PHP
PHP strip_tags保留多个HTML标签的方法
May 22 PHP
php中分页及SqlHelper类用法实例
Jan 12 PHP
MAC下通过改apache配置文件切换php多版本的方法
Apr 26 PHP
PHP文件管理之实现网盘及压缩包的功能操作
Sep 20 PHP
PHP封装的完整分页类示例
Aug 21 PHP
详解Laravel设置多态关系模型别名的方式
Oct 17 PHP
php实现微信小程序授权登录功能(实现流程)
Nov 13 PHP
PHP中new static() 和 new self() 的区别介绍
Jan 09 #PHP
PHP中的替代语法介绍
Jan 09 #PHP
php获取客户端电脑屏幕参数的方法
Jan 09 #PHP
PHP计算百度地图两个GPS坐标之间距离的方法
Jan 09 #PHP
php实现按照权重随机排序数据的方法
Jan 09 #PHP
PHP实现采集抓取淘宝网单个商品信息
Jan 08 #PHP
linux中cd命令使用详解
Jan 08 #PHP
You might like
风格模板初级不完全修改教程
2006/10/09 PHP
开启CURL扩展,让服务器支持PHP curl函数(远程采集)
2011/03/19 PHP
php学习之 数组声明
2011/06/09 PHP
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
2014/09/24 PHP
漂亮的thinkphp 跳转页封装示例
2019/10/16 PHP
不能再简单的无闪刷新验证码原理很简单
2007/11/05 Javascript
分享10篇优秀的jQuery幻灯片制作教程及应用案例
2011/04/16 Javascript
JQuery入门——事件切换之hover()方法应用介绍
2013/02/05 Javascript
JavaScript sup方法入门实例(把字符串显示为上标)
2014/10/20 Javascript
jQuery使用元素属性attr赋值详解
2015/02/27 Javascript
Jquery循环截取字符串的方法(多出的字符串处理成&quot;...&quot;)
2016/11/28 Javascript
Angular2学习教程之TemplateRef和ViewContainerRef详解
2017/05/25 Javascript
js实现网页的两个input标签内的数值加减(示例代码)
2017/08/15 Javascript
vue-router 手势滑动触发返回功能
2018/09/30 Javascript
Vue.js组件间通信方式总结【推荐】
2018/11/23 Javascript
解决axios post 后端无法接收数据的问题
2019/10/29 Javascript
Node.js中console.log()输出彩色字体的方法示例
2019/12/01 Javascript
JavaScript实现滑动门效果
2020/01/18 Javascript
微信小程序去除左上角返回键的实现方法
2020/03/06 Javascript
JavaScript快速调试的两个技巧
2020/11/04 Javascript
微信小程序实现列表左右滑动
2020/11/19 Javascript
[00:37]DOTA2上海特级锦标赛 Secert 战队宣传片
2016/03/03 DOTA
[40:01]OG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python正则简单实例分析
2017/03/21 Python
python实现装饰器、描述符
2018/02/28 Python
Python 判断奇数偶数的方法
2018/12/20 Python
计算机二级python学习教程(3) python语言基本数据类型
2019/05/16 Python
Django ORM 聚合查询和分组查询实现详解
2019/08/09 Python
pytorch多GPU并行运算的实现
2019/09/27 Python
python求质数列表的例子
2019/11/24 Python
Python Selenium 设置元素等待的三种方式
2020/03/18 Python
从Pytorch模型pth文件中读取参数成numpy矩阵的操作
2021/03/04 Python
HTML5离线应用与客户端存储的实现
2018/05/03 HTML / CSS
乡镇庆八一活动方案
2014/02/02 职场文书
职员竞岗演讲稿
2014/05/14 职场文书
检讨书范文500字
2015/01/28 职场文书