/**
 * Thu thập hình ảnh từ xa
 * @param string $url địa chỉ tệp từ xa
 * @param string $filename Tên tệp đã lưu (nếu trống, đó là tên tệp được tạo ngẫu nhiên, nếu không thì là tên tệp gốc)
 * @param mảng $fileType loại tệp được phép
 * @param string $dirName Đường dẫn lưu file
 * @param int $type Cách lấy tệp từ xa
 * @return json Trả về tên file và đường dẫn lưu file
 */
hàm download_image($url, $fileName = '', $dirName, $fileType = array('jpg', 'gif', 'png'), $type = 1)
{
    nếu ($url == '')
    {
        trả về sai;
    }

    // Lấy tên file gốc của file
    $defaultFileName = tên cơ sở($url);

    // Lấy loại file
    $suffix = substr(strrchr($url, '.'), 1);
    if (!in_array($suffix, $fileType))
    {
        trả về sai;
    }

    //Đặt tên file sau khi lưu
    $fileName = $fileName == '' ? thời gian() . rand(0, 9) . '.' . $suffix : $defaultFileName;

    // Lấy tài nguyên file từ xa
    nếu($loại)
    {
        $ch = Curl_init();
        $ thời gian chờ = 30;
        Curl_setopt($ch, CURLOPT_URL, $url);
        Curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        Curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
        $file = Curl_exec($ch);
        Curl_close($ch);
    }
    khác
    {
        ob_start();
        tệp đọc($url);
        $file = ob_get_contents();
        ob_end_clean();
    }

    //Đặt đường dẫn lưu file
    $dirName = $dirName;
    if (!file_exists($dirName))
    {
        mkdir($dirName, 0777, true);
    }

    // lưu tập tin
    $res = fopen($dirName . '/' . $fileName, 'a');
    fwrite($res, $file);
    fclose($res);

    mảng trả về(
        'Tên tệp' => $tên tệp,
        'saveDir' => $dirName
    );
}