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的开发框架的现状和展望
Mar 16 PHP
解决163/sohu/sina不能够收到PHP MAIL函数发出邮件的问题
Mar 13 PHP
PHP日期时间函数的高级应用技巧
May 16 PHP
用PHP获取Google AJAX Search API 数据的代码
Mar 12 PHP
php输出xml格式字符串(用的这个)
Jul 12 PHP
php stripslashes和addslashes的区别
Feb 03 PHP
PHP中array_slice函数用法实例详解
Nov 25 PHP
Opcache导致php-fpm崩溃nginx返回502
Mar 02 PHP
浅谈PHP的排列组合(如输入a,b,c 输出他们的全部组合)
Mar 14 PHP
php从数据库读取数据,并以json格式返回数据的方法
Aug 21 PHP
php中错误处理操作实例分析
Aug 23 PHP
深入分析PHP设计模式
Jun 15 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
了解Joomla 这款来自国外的php网站管理系统
2010/03/11 PHP
Laravel中为什么不使用blpop取队列详析
2018/08/01 PHP
js特效,页面下雪的小例子
2013/06/17 Javascript
火狐下table中创建form导致两个table之间出现空白
2013/09/02 Javascript
Jquery实现Div上下移动示例
2014/04/23 Javascript
JavaScript中number转换成string介绍
2014/12/31 Javascript
JavaScript DOM元素尺寸和位置
2015/04/13 Javascript
Jsonp post 跨域方案
2015/07/06 Javascript
论JavaScript模块化编程
2016/03/07 Javascript
JS中substring与substr的用法
2016/11/16 Javascript
jQuery实现的省市联动菜单功能示例【测试可用】
2017/01/13 Javascript
浅谈react-router HashRouter和BrowserRouter的使用
2017/12/29 Javascript
详解Angular路由之路由守卫
2018/05/10 Javascript
详解Vue组件之作用域插槽
2018/11/22 Javascript
js屏蔽退格键(backspace或者叫后退键与F5)
2019/02/10 Javascript
用Golang运行JavaScript的实现示例
2019/11/25 Javascript
js中关于Blob对象的介绍与使用
2019/11/29 Javascript
node 版本切换的实现
2020/02/02 Javascript
[04:17]DOTA2完美盛典,rOtk、BurNIng携手巴图演唱《倔强》
2017/11/28 DOTA
python 判断是否为正小数和正整数的实例
2017/07/23 Python
对django中render()与render_to_response()的区别详解
2018/10/16 Python
numpy向空的二维数组中添加元素的方法
2018/11/01 Python
Python进阶之使用selenium爬取淘宝商品信息功能示例
2019/09/16 Python
Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示
2020/04/08 Python
对Matlab中共轭、转置和共轭装置的区别说明
2020/05/11 Python
Python中bisect的用法及示例详解
2020/07/20 Python
瑞典Happy Socks美国官网:购买色彩斑斓的快乐袜子
2016/10/19 全球购物
你常见到的runtime exception
2016/09/05 面试题
怎样从/向数据文件读/写结构
2014/11/23 面试题
定义一结构体变量,用其表示点坐标,并输入两点坐标,求两点之间的距离
2015/08/17 面试题
介绍一下SQL Server的全文索引
2013/08/15 面试题
国家助学金获奖感言
2014/01/31 职场文书
文科毕业生自荐书范文
2014/04/17 职场文书
企业安全生产月活动总结
2014/07/05 职场文书
2015年教师党员个人总结
2015/11/24 职场文书
详解在OpenCV中如何使用图像像素
2022/03/03 Python