久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

PHP下載采集圖片到本地的方法詳解【可忽略ssl認(rèn)證】

瀏覽:148日期:2022-06-13 16:28:01
readfile和file_put_contents下載遠(yuǎn)程圖片到本地<?phpfunction download_image($pic_url){ $time = time(); $pic_local_path = dirname(__FILE__) . '/cache'; $pic_local = $pic_local_path . '/' . $time; if (!file_exists($pic_local_path)) {mkdir($pic_local_path, 0777);@chmod($pic_local_path, 0777); } ob_start(); //打開(kāi)輸出 readfile($pic_url); //輸出圖片文件 $img = ob_get_contents(); //得到瀏覽器輸出 ob_end_clean(); //清除輸出并關(guān)閉 file_put_contents($pic_local, $img); return $pic_local;}curl下載遠(yuǎn)程圖片到本地<?php$ch = curl_init();$fp=fopen('./girl.jpg', 'w');curl_setopt($ch, CURLOPT_URL, 'https://img02.sogoucdn.com/app/a/100520091/20181209114105');curl_setopt($ch, CURLOPT_FAILONERROR, true);curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 100);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);curl_setopt($ch, CURLOPT_FILE, $fp); $output = curl_exec($ch);$info = curl_getinfo($ch);$error = curl_error($ch);fclose($fp);$size = filesize('./girl.jpg');if ($size != $info['size_download']) {echo '下載失敗';echo $error;} else {echo '下載成功';}curl_close($ch);/** * 下載遠(yuǎn)程圖片到本地 * * @param string $url 遠(yuǎn)程文件地址 * @param string $filename 保存后的文件名(為空時(shí)則為隨機(jī)生成的文件名,否則為原文件名) * @param array $fileType 允許的文件類(lèi)型 * @param string $dirName 文件保存的路徑(路徑其余部分根據(jù)時(shí)間系統(tǒng)自動(dòng)生成) * @param int $type 遠(yuǎn)程獲取文件的方式 * @return json 返回文件名、文件的保存路徑 * @author blog.snsgou.com */function download_image($url, $fileName = '', $dirName, $fileType = array('jpg', 'gif', 'png'), $type = 1){ if ($url == '') {return false; } // 獲取文件原文件名 $defaultFileName = basename($url); // 獲取文件類(lèi)型 $suffix = substr(strrchr($url, '.'), 1); if (!in_array($suffix, $fileType)) {return false; } // 設(shè)置保存后的文件名 $fileName = $fileName == '' ? time() . rand(0, 9) . '.' . $suffix : $defaultFileName; // 獲取遠(yuǎn)程文件資源 if ($type) {$ch = curl_init();$timeout = 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); } else {ob_start();readfile($url);$file = ob_get_contents();ob_end_clean(); } // 設(shè)置文件保存路徑 //$dirName = $dirName . '/' . date('Y', time()) . '/' . date('m', time()) . '/' . date('d', time()); $dirName = $dirName . '/' . date('Ym', time()); if (!file_exists($dirName)) {mkdir($dirName, 0777, true); } // 保存文件 $res = fopen($dirName . '/' . $fileName, 'a'); fwrite($res, $file); fclose($res); return array('fileName' => $fileName,'saveDir' => $dirName );}PHP讀寫(xiě)大 二進(jìn)制 文件

不必申請(qǐng)很大內(nèi)存(fopen、fread、fwrite、fclose)

<?php/** * 讀寫(xiě)大二進(jìn)制文件,不必申請(qǐng)很大內(nèi)存 * 只有讀取到內(nèi)容才創(chuàng)建文件 * 保證目錄可寫(xiě) * * @param string $srcPath 源文件路徑 * @param string $dstPath 目標(biāo)文件路徑 * @return bool */function fetch_big_file($srcPath, $dstPath){ set_time_limit(0); // 設(shè)置腳本執(zhí)行時(shí)間無(wú)限長(zhǎng) if (!$fpSrc = fopen($srcPath, 'rb')) {return false; } $isWriteFileOpen = false; // 寫(xiě)文件 是否已打開(kāi)? do {$data = fread($fpSrc, 8192); // 每次讀取 8*1024個(gè)字節(jié)if (!$data){ break;}else if (!$isWriteFileOpen){ // 第一次讀取文件,并且有內(nèi)容,才創(chuàng)建文件 $fpDst = fopen($dstPath, 'wb'); $isWriteFileOpen = true; fwrite($fpDst, $data);}else{ // 寫(xiě)入 fwrite($fpDst, $data);} } while (true); fclose($fpSrc); fclose($fpDst); return true;}$srcPath = 'd:/big.pdf';$dstPath = 'Z:/big.pdf';fetch_big_file($srcPath, $dstPath);echo 'success';注:代碼說(shuō)明curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

可忽略ssl認(rèn)證,對(duì)于圖片https協(xié)議失效的情況可以忽略驗(yàn)證,正常訪問(wèn)。

同樣的,使用 file_get_contents 函數(shù)忽略https認(rèn)證的話可以使用如何代碼實(shí)現(xiàn):

$url = 'https://img02.sogoucdn.com/app/a/100520091/20181209114105';$stream_opts = [? ? 'ssl' => [? ? ? ? 'verify_peer'=>false,? ? ? ? 'verify_peer_name'=>false,? ? ]];$cdata = file_get_contents($url,false, stream_context_create($stream_opts));
標(biāo)簽: PHP
相關(guān)文章:
主站蜘蛛池模板: 日本不卡一区二区三区在线观看 | 春色导航 | 久久久久国产精品一区二区三区 | 久久精品中文字幕 | 欧美激情五月 | 中字幕视频在线永久在线观看免费 | 狠狠干狠狠操 | 精品久久一区二区 | 黄色免费网站在线看 | 天天干一干 | 91精品国产99 | 欧美大片一区二区 | 999成人网 | 国产精品久久九九 | 97国产精品 | 欧美日韩久久久久 | 亚洲国产精品一区二区第一页 | www.男人天堂| 久久最新| 日本三级中国三级99人妇网站 | 日韩在线观看一区 | 久久一区二区三区四区 | 天天综合网7799精品 | 久久首页| 一区三区在线观看 | 在线一区观看 | 成人精品在线视频 | 亚洲一区二区视频在线播放 | 国产视频一区二区在线 | 精品一区二区在线观看 | 亚洲高清免费 | 欧美一级二级视频 | 精品国产一区二区三区久久久久久 | 黄色高清视频在线观看 | av毛片免费| 精品免费在线 | 国产精品高潮呻吟av久久4虎 | 欧美国产日韩在线 | 亚洲一区二区三区 | 天天综合网91 | 亚洲欧美一区二区精品中文字幕 |