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

yipeiwu_com5年前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如何获取文件的扩展名

网上也有很多类似的方法,不过都存在这样那样的不严谨的问题,本文就不一一分析了,这里只给出最正确的利用php 获取文件扩展名(文件后缀名)的方法。 function get_exte...

Laravel SQL语句记录方式(推荐)

Laravel SQL语句记录方式(推荐)

打印sql语句,直接在你执行SQL语句后输出 方法一:  $queries = DB::getQueryLog();  $a = end($queries); &n...

php引用地址改变变量值的问题

复制代码 代码如下: <?php $foo = 'Bob'; // 将 'Bob' 赋给 $foo $bar = &$foo; // 通过 $bar 引用 $foo echo $f...

PHP实现从上往下打印二叉树的方法

本文实例讲述了PHP实现从上往下打印二叉树的方法。分享给大家供大家参考,具体如下: 问题 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 解决思路 每层树从左到右打印,所以需要将...

PHP/HTML混写的四种方式总结

PHP/HTML混写的四种方式总结

PHP作为一款后端语言,为了输出给浏览器让浏览器呈现出来,无可避免的要输出HTML代码,下文介绍下我用过的三种PHP/HTML混编方法 1、单/双引号包围法 这是最初级的方法了,用法就像...