/**
* h5上传base64文件
* @param string $file 图片base64数据
* @param string $ext 图片扩展名
* @return string
*/
function an_upload_h5($file, $ext = 'jpg')
{
$file = str_replace('data:image/png;base64,', '', $file);
$file = str_replace('data:image/jpg;base64,', '', $file);
$file = base64_decode(str_replace('data:image/jpeg;base64,', '', $file));
$target = build_target_name($ext);
if (!file_exists($target)) {
file_put_contents($target, $file);
}
return substr($target, strlen(UPLOAD_PATH));
}
/**
* 组装存储文件名
* @param string $ext 扩展名
* @return string
*/
function build_target_name($ext)
{
$time = time();
$path = date('/Y/m/d', $time);
//$folder = UPLOAD_PATH.'/2014/03/31';
$folder = UPLOAD_PATH;
$tmp_arr = explode('/', ltrim($path, '/'));
foreach($tmp_arr as $k=>$v) {
$folder .= '/'.$v;
if (!file_exists($folder)) {
@mkdir($folder, 0777, true);
@chmod($folder, 0777);
}
}
//var_dump($tmp_arr, $folder);
//exit;
static $count = 1;
// u为microseconds,> PHP 5.2.2
if (version_compare(PHP_VERSION, '5.2.2') >= 0) {
$current_time = date('YmdHisu', $time);
} else {
$current_time = date('YmdHis', $time);
}
$random = mt_rand(0, 100);
$target = $folder.'/'.$current_time.'_'.$count.'_'.'_'.$random.'.'.$ext;
$target = trim($target, '.');
$count++;
return $target;
}
发表评论