str_pad(string,length,pad_string,pad_type)
string 要填充的字符串
length 新字符串的长度。如果该值小于原始字符串的长度,则不进行任何操作。
pad_string 规定供填充使用的字符串。默认是空白。
pad_type TR_PAD_BOTH - 填充到字符串的两头。如果不是偶数,则右侧获得额外的填充。STR_PAD_LEFT - 填充到字符串的左侧。STR_PAD_RIGHT - 填充到字符串的右侧。这是默认的。
//生成路径目录
function get_image_path($image_id, $path) {
$image_dir = ceil(strlen($image_id) / 3)*3; //计算该id总长度
$image_dir = str_pad($image_id, $image_dir, "0", STR_PAD_LEFT);//guid三等份不够的前面补零
$image_dir = implode(str_split($image_dir, 3), "/"); //每三个创建一个目录,组成新的字符串
$image_path = $path.$image_dir;//生成最终的目录串
return $image_path;
}
//根据路径新建文件
//根据规定创建多级嵌套文件夹 function createfolder($path) { if (!file_exists($path)) { $this->createFolder(dirname($path)); mkdir($path, 0777); } }