我想从他们的网址获取多个图片,我想将它们保存在目录中。
我已经使用了file_put_contents()
,但它只是放了一个图像。
这是循环中使用此函数的更好方法,还是在循环中使用而不是file_put_contents()
的另一个函数?
<?php
include "config.php";
//open ssl:
$arrContextOptions = array(
"ssl" => array(
"verify_peer" => false,
"verify_peer_name" => false,
),
);
set_time_limit(0);
$url = 'https://www.instagram.com/' . $name . '/media/';
$content = file_get_contents($url, false, stream_context_create($arrContextOptions));
$json = json_decode($content, true);
//var_dump($json);die();
mkdir($name);
chmod($name, 0600);
for ($i = 0; $i <= 19; $i++) {
$a = $json['items'][$i]['images']['thumbnail']['url'];
$content = file_get_contents($a);
file_put_contents($name . '/image.jpg', $content);
}
?>
答案 0 :(得分:2)
将文件名更改为:
file_put_contents($name. '/image_'.$i.'.jpg', $content);
然后他们会停止互相覆盖。
答案 1 :(得分:2)
使用file_put_contents($ name。&#34; /image$i.jpg",$ content)。您现在正在覆盖同一个文件,因此只剩下一个
答案 2 :(得分:1)
您必须有意使用file_put_contents($name. '/image.jpg', $content . "\n", FILE_APPEND);
将所有图像存储在一个文件中:
$i
或者为了创建大量文件,您必须在文件名中使用file_put_contents($name. "/image.$i.jpg", $content);
,例如:
'.price-currencySymbol'