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 相关文章推荐
关于Intype一些小问题的解决办法
Mar 28 PHP
PHP 遍历文件实现代码
May 04 PHP
PHP连接局域网MYSQL数据库的简单实例
Aug 26 PHP
php获取目录所有文件并将结果保存到数组(实例)
Oct 25 PHP
php把数据表导出为Excel表的最简单、最快的方法(不用插件)
May 10 PHP
php中$_POST与php://input的区别实例分析
Jan 07 PHP
php进程间通讯实例分析
Jul 11 PHP
php实现登录tplink WR882N获取IP和重启的方法
Jul 20 PHP
PHP判断密码强度的方法详解
May 26 PHP
Laravel 微信小程序后端实现用户登录的示例代码
Nov 26 PHP
Yii2框架中一些折磨人的坑
Dec 15 PHP
PHP isset()及empty()用法区别详解
Aug 29 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/12/21 PHP
php+js实现图片的上传、裁剪、预览、提交示例
2013/08/27 PHP
php实现删除空目录的方法
2015/03/16 PHP
php检查日期函数checkdate用法实例
2015/03/19 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
2018/04/24 PHP
Span元素的width属性无效果原因及解决方案
2010/01/15 Javascript
jQuery boxy弹出层插件中文演示及使用讲解
2011/02/24 Javascript
用javascript模仿ie的自动完成类似自动完成功的表单
2012/12/12 Javascript
简单实例处理url特殊符号&amp;处理(2种方法)
2013/04/02 Javascript
js导出txt示例代码
2014/01/14 Javascript
jquery数组封装使用方法分享(jquery数组遍历)
2014/03/25 Javascript
js实现checkbox全选和反选示例
2014/05/01 Javascript
实例讲解jquery与json的结合
2016/01/07 Javascript
论Bootstrap3和Foundation5网格系统的异同
2016/05/16 Javascript
深入理解vue.js中的v-if和v-show
2017/06/22 Javascript
JS实现在文本指定位置插入内容的简单示例
2017/12/22 Javascript
vuex的简单使用教程
2018/02/02 Javascript
对于防止按钮重复点击的尝试详解
2019/04/22 Javascript
jQuery实现鼠标移入显示蒙版效果
2020/01/11 jQuery
在vue中使用console.log无效的解决
2020/08/09 Javascript
vue中配置scss全局变量的步骤
2020/12/28 Vue.js
python中定义结构体的方法
2013/03/04 Python
Python3.6简单反射操作示例
2018/06/14 Python
浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)
2019/08/12 Python
Pyinstaller 打包exe教程及问题解决
2019/08/16 Python
Pytorch 的损失函数Loss function使用详解
2020/01/02 Python
python新式类和经典类的区别实例分析
2020/03/23 Python
css3给背景图片加颜色遮罩的方法
2019/11/05 HTML / CSS
亿企通软件测试面试题
2012/04/10 面试题
运动会解说词200字
2014/02/06 职场文书
机械工程学院大学生求职信
2014/05/25 职场文书
小学校园广播稿(3篇)
2014/09/19 职场文书
服务整改报告
2014/11/06 职场文书
保洁员岗位职责
2015/02/04 职场文书
关于k8s环境部署mysql主从的问题
2022/03/13 MySQL
Win11如何设置右键单击显示所有选项?Win11右键单击显示所有选项设置教程
2022/04/08 数码科技