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 相关文章推荐
第1次亲密接触PHP5(1)
Oct 09 PHP
利用js调用后台php进行数据处理原码
Oct 09 PHP
php下过滤HTML代码的函数
Dec 10 PHP
PHP fgetcsv 定义和用法(附windows与linux下兼容问题)
May 29 PHP
php CI框架插入一条或多条sql记录示例
Jul 29 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
Dec 15 PHP
php简单实现多字节字符串翻转的方法
Mar 31 PHP
PHP合并discuz用户脚本的方法
Aug 04 PHP
php如何获取文件的扩展名
Oct 28 PHP
CodeIgniter控制器之业务逻辑实例分析
Jan 20 PHP
Laravel框架路由和控制器的绑定操作方法
Jun 12 PHP
gearman中任务的优先级和返回状态实例分析
Feb 27 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
提升PHP执行速度全攻略
2006/10/09 PHP
模仿OSO的论坛(一)
2006/10/09 PHP
PHP HTML代码串截取代码
2008/12/29 PHP
PHP 开发环境配置(Zend Studio)
2010/04/28 PHP
PHP OPP机制和模式简介(抽象类、接口和契约式编程)
2014/06/09 PHP
Yii调试查看执行SQL语句的方法
2016/07/15 PHP
简单的pgsql pdo php操作类实现代码
2016/08/25 PHP
PHP与SQL语句常用大全
2016/12/10 PHP
Javascript优化技巧(文件瘦身篇)
2008/01/28 Javascript
jQuery简单实现网页选项卡特效
2014/11/24 Javascript
Js调用Java方法并互相传参的简单实例
2016/08/11 Javascript
微信小程序去哪里找 小程序到底如何使用(附小程序名单)
2017/01/09 Javascript
Bootstrap fileinput文件上传预览插件使用详解
2017/05/16 Javascript
表格展示利器 Bootstrap Table实例代码
2017/09/06 Javascript
vue中轮训器的使用
2019/01/27 Javascript
原生JS实现列表内容自动向上滚动效果
2019/05/22 Javascript
[53:15]2018DOTA2亚洲邀请赛3月29日 小组赛A组 KG VS OG
2018/03/30 DOTA
Python笔记(叁)继续学习
2012/10/24 Python
Python基于回溯法子集树模板实现8皇后问题
2017/09/01 Python
Python中GeoJson和bokeh-1的使用讲解
2019/01/03 Python
python机器学习库scikit-learn:SVR的基本应用
2019/06/26 Python
python logging 日志的级别调整方式
2020/02/21 Python
NFL墨西哥官方商店:Tienda NFL
2017/11/28 全球购物
美国流行背包品牌:JanSport(杰斯伯)
2018/03/02 全球购物
一份Java笔试题
2012/02/21 面试题
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
2014/09/26 面试题
Ejb技术面试题
2015/04/29 面试题
医护人员英文求职信范文
2013/11/26 职场文书
《长征》教学反思
2014/04/27 职场文书
2014年教师节演讲稿
2014/09/03 职场文书
小学感恩节活动策划方案
2014/10/06 职场文书
2014年流动人口工作总结
2014/11/26 职场文书
车间主任岗位职责
2015/02/03 职场文书
行政人事专员岗位职责
2015/04/07 职场文书
苹果电脑mac os中货币符号快捷输入
2022/02/17 杂记
Python中np.random.randint()参数详解及用法实例
2022/09/23 Python