thinkphp3.2 上传多张图片,生成缩略图

public function files()
{
    $d = $_POST;
    if ($d['resource']) {
        $img[''] = explode(',', $d['resource']);
        $thumb_url = '';
        foreach ($img[''] as $imgUrl) {
            $image = new \Think\Image();
            $url = $_SERVER['HTTP_ORIGIN'] . '/jbl/';
            $img_url = explode('Public/', $imgUrl)[1]; //路径
            $img_ext = explode('.', $img_url);//后戳
            $img_name = $img_ext['0'] . '_' . '.' . $img_ext['1'];//原图名称
            $thumb_image_name = $img_ext['0'] . '.' . $img_ext['1'];//缩略图名称
            $document_root = explode('index.php', $_SERVER['SCRIPT_FILENAME'])[0];

            $a = $document_root . 'Public/Uploads/';//目录
            $b = $document_root . 'Public/' . $img_url;//源文件名
            $c = $document_root . 'Public/' . $img_name . $img_ext['ext'];//新文件名
            shell_exec("cd {$a} && cp {$b} {$c}");

            $image->open($document_root . 'Public/' . $img_url);//打开原图
            $image->thumb(200, 200)->save($b);//生成缩略图
            $thumb_url_a = $url . 'Public/' . $thumb_image_name . $img_ext['ext'];//缩略图路径
            $img_url = $url . 'Public/' . $img_name . $img_ext['ext'];//原图路径
            $thumb_url .= $thumb_url_a . ",";
        }
        $thumb_url = substr($thumb_url, 0, -1);
    }

}

 

上传多张图片,生成缩略图,多张图片用逗号隔开,缩略图在后缀前加_ 原图没有,不懂联系QQ:992660662

你可能感兴趣的:(php)