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

yipeiwu_com7年前PHP代码库

本文实例讲述了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内部函数trim() 。但是, 我们经常想完全清除空白。需要把开始和结束的空白清除掉,将多个空白变为一个空白,使用一个规则来处理同样的类...

PHP实现正则表达式分组捕获操作示例

PHP实现正则表达式分组捕获操作示例

本文实例讲述了PHP实现正则表达式分组捕获操作。分享给大家供大家参考,具体如下: 经过测试,发现php正则表达式获取分组捕获是从$0开始,而平时工作中JavaScript中的正则是$1....

php实现用已经过去多长时间的方式显示时间

本文实例讲述了php用已经过去多长时间的方式显示时间的方法。分享给大家供大家参考。具体如下: 这里以一种可读性比较好的方式显示已经过去多长时间,比如:距离现在10秒,距离现在1天等等。...

PHP获取指定函数定义在哪个文件中以及其所在的行号实例

当调试开源的代码时,希望查看某个函数的定义,那么就需要定位其位置。在 zend studio 这样的 IDE 中自是可以自动提示到,但当没有安装这样的开发工具时,我们可以怎么办呢?参考如...

PHP错误提示It is not safe to rely on the system……的解决方法

在php程序开发中有时会出现类似于这样的警告: PHP Warning: date(): It is not safe to rely on the system's timezone...