显示特定尺寸的图像

时间:2018-10-18 12:21:41

标签: php html

我在用php显示特定大小的图像时遇到问题。在这里,我使用了foreach循环。有人帮我解决这个问题。

这是代码,

    <?php
function scrape_insta_hash($tag) {
    $insta_source = file_get_contents('https://www.instagram.com/explore/tags/'.$tag.'/'); // instagrame tag url
    $shards = explode('window._sharedData = ', $insta_source);
    $insta_json = explode(';</script>', $shards[1]); 
    $insta_array = json_decode($insta_json[0], TRUE);
    return $insta_array; // this return a lot things print it and see what else you need
}

    $tag = 'paris'; // tag for which ou want images 
    $results_array = scrape_insta_hash($tag);
    //$limit = 7; 
    $limit = 15; // provide the limit thats important because one page only give some images.
    $image_array= array(); // array to store images.
    for ($i=0; $i < $limit; $i++) { 

        $latest_array = $results_array['entry_data']['TagPage'][0]['graphql']['hashtag']['edge_hashtag_to_media']['edges'][$i]['node'];
        $image_data  = '<img src="'.$latest_array['thumbnail_src'].'">'; // thumbnail and same sizes 
        //$image_data  = '<img src="'.$latest_array['display_src'].'">'; actual image and different sizes 
        array_push($image_array, $image_data);
    }


    foreach ($image_array as $image) {
        echo $image;

        }

?>

1 个答案:

答案 0 :(得分:0)

使用所需的图像高度宽度属性更改您的for循环

for ($i=0; $i < $limit; $i++) { 

        $latest_array = $results_array['entry_data']['TagPage'][0]['graphql']['hashtag']['edge_hashtag_to_media']['edges'][$i]['node'];
        $image_data  = '<img height="150" width="150" src="'.$latest_array['thumbnail_src'].'">'; // thumbnail and same sizes 
        //$image_data  = '<img src="'.$latest_array['display_src'].'">'; actual image and different sizes 
        array_push($image_array, $image_data);
    }