当前位置:网站首页>What are the ways to download network pictures with PHP

What are the ways to download network pictures with PHP

2022-07-06 07:46:00 Brother Jing

Method 1

advantage : Simple .

shortcoming : Relatively inefficient .

This method mainly uses two functions file_get_contents as well as file_put_contents This method is very simple , Generally speaking, first get To picture content , then put To a file .

The code is as follows :<?php

$imgFile = 'http://***.***.***/Uploads/20200424/1587710975CZlGeB.jpg';

// Get the file name

$imgName = trim(strrchr($imgFile, '/'), '/');

file_put_contents($imgName, file_get_contents($imgFile));

Method 2

The method most used by individuals .

shortcoming : A little more complicated , To master curl Usage of , Need to know curl The meaning of some options .

advantage : Efficient , It's easy to support https;

curl Very powerful , It's also phper Skills that must be mastered , Therefore, it is recommended that you use this method . The idea of this method is , Use curl Tools to get information about remote pictures , Then save the information to a local file . I'm not right here curl_exec The result of is verified , Steal laziness . About curl Usage of , If you want to know more , Can be in Gxlcms Mid search curl.$imgFile = 'https://***.***.***/uploads/20200121/bd873d945595.png';

function down_img($imgUrl)

{

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $imgUrl); // Request address

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Do not output information directly

// You can visit https request

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

// perform curl And get the data

$results = curl_exec($ch);

$imgName = trim(strrchr($imgUrl, '/'), '/');

$fp = fopen($imgName, 'w');

fwrite($fp, $results);

// After execution , Remember to close resources

curl_close($ch);

}

down_img($imgFile);

Method 3

It's also very simple , What is used is php Knowledge of document management . First Create two file handles , A binary information for reading remote pictures , Another one is used to save picture information .<?php

$imgFile = '

$imgName = trim(strrchr($imgFile, '/'), '/');

// Read remote image resources

$source = fopen($imgFile, 'rb');

// Create a local file resource handle , Used to save picture information

$down = fopen($imgName, 'wb');

while ($chunk = fread($source,1024)){

fwrite($down, $chunk, 1024);

}

fclose($source);

fclose($down);

原网站

版权声明
本文为[Brother Jing]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/02/202202131901165116.html