网站上传文件时,如果是小的企业站,放在一个目录还没问题,当网站大了,上传的文件多了,我们就不能放在同一个目录了,现在我们来讲讲用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" |
这里我们讲的主要是数方式分配路径及杂凑方式分配路径,我们还可以根据日期来分配,这个问题留给读者自己去实现。

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

Atom editor mac version download
The most popular open source editor

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Zend Studio 13.0.1
Powerful PHP integrated development environment

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function
