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 读取文件乱码问题
Feb 20 PHP
《PHP编程最快明白》第三讲:php数组
Nov 01 PHP
php函数serialize()与unserialize()用法实例
Nov 06 PHP
php实现比较两个字符串日期大小的方法
May 12 PHP
Yii2.0 模态弹出框+ajax提交表单
May 22 PHP
详解PHP归并排序的实现
Oct 18 PHP
DEDE实现转跳属性文档在模板上调用出转跳地址
Nov 04 PHP
PHP处理Ajax请求与Ajax跨域问题
Feb 13 PHP
PHP简单获取上月、本月、近15天、近30天的方法示例
Jul 03 PHP
PHP多进程编程实例详解
Jul 19 PHP
PHP代码重构方法漫谈
Apr 17 PHP
PHP实现腾讯短网址生成api接口实例
Dec 08 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 开发环境配置(Zend Studio)
2010/04/28 PHP
ezSQL PHP数据库操作类库
2010/05/16 PHP
php阻止页面后退的方法分享
2014/02/17 PHP
ThinkPHP之A方法实例讲解
2014/06/20 PHP
PHP中遇到BOM、编码导致json_decode函数无法解析问题
2014/07/02 PHP
比Jquery的document.ready更快的方法
2010/04/28 Javascript
javascript获取所有同类checkbox选项(实例代码)
2013/11/07 Javascript
JavaScript forEach()遍历函数使用及介绍
2015/07/08 Javascript
jQuery实现折叠、展开的菜单组效果代码
2015/09/16 Javascript
使用jQuery制作Web页面遮罩层插件的实例教程
2016/05/26 Javascript
AngularJs实现分页功能不带省略号的代码
2016/05/30 Javascript
解析JavaScript中的字符串类型与字符编码支持
2016/06/24 Javascript
jQuery Datatables表头不对齐的解决办法
2017/11/27 jQuery
Vue 递归多级菜单的实例代码
2019/05/05 Javascript
Tornado Web服务器多进程启动的2个方法
2014/08/04 Python
简要讲解Python编程中线程的创建与锁的使用
2016/02/28 Python
python监控文件或目录变化
2016/06/07 Python
Python3实现发送QQ邮件功能(附件)
2020/12/23 Python
Python 编码规范(Google Python Style Guide)
2018/05/05 Python
python 读取Linux服务器上的文件方法
2018/12/27 Python
详解python配置虚拟环境
2019/04/08 Python
使用Python实现将list中的每一项的首字母大写
2019/06/11 Python
Django 自动生成api接口文档教程
2019/11/19 Python
python中栈的原理及实现方法示例
2019/11/27 Python
TensorFlow内存管理bfc算法实例
2020/02/03 Python
python由已知数组快速生成新数组的方法
2020/04/08 Python
使用Matplotlib绘制不同颜色的带箭头的线实例
2020/04/17 Python
css3进行截取替代js的substring
2013/09/02 HTML / CSS
泰国Robinson百货官网:购买知名品牌的商品
2020/02/08 全球购物
"序列点" 是什么
2016/07/29 面试题
自我推荐书
2013/12/04 职场文书
初三家长会邀请函
2014/01/18 职场文书
保密工作实施方案
2014/02/24 职场文书
MySQL安装后默认自带数据库的作用详解
2021/04/27 MySQL
python实现三阶魔方还原的示例代码
2021/04/28 Python
TV动画《八十龟酱观察日记》第四季宣传PV公布
2022/04/06 日漫