从twitter api实体参数php获取图片url


Get image url from twitter api entity parameter php

我正试图通过entities参数获取并显示用php发布在推特中的图像。我在url中包含了entities,并且可以在返回的json中看到这些实体。

在foreach循环中,我正在执行以下操作:

foreach($results as $result){
    $media_url = $result->entities->media->media_url;
    $media_size_h = $result->entities->media->sizes->small->h;
    $media_size_w = $result->entities->media->sizes->small->w;
...
}

然而,这并没有带来任何回报。

对于我的输出,我有。。。

if(strlen($media_url) > 0)
{
    //format table for tweets with images
} else {
    //format table for regular tweets 
} 

这是json。。。

array(20) {
[0]=>
object(stdClass)#5 (21) {
...
["entities"]=>
object(stdClass)#7 (4) {
  ["media"]=>
  array(1) {
    [0]=>
    object(stdClass)#8 (10) {
      ["type"]=>
      string(5) "photo"
      ["media_url"]=>
      string(38) "http://photourl.jpg"
...
["sizes"]=>
      object(stdClass)#9 (4) {
        ["thumb"]=>
        object(stdClass)#10 (3) {
          ["resize"]=>
          string(4) "crop"
          ["h"]=>
          int(150)
          ["w"]=>
          int(150)
        }
...
}

有什么想法为什么不起作用吗?任何帮助都将不胜感激!

$result->entities->media->这是一个在结构中看到的数组。。。尝试使用

$media_url = $result->entities->media[0]->media_url;
$results = json_decode($results);

我认为在解码json对象时,更容易了解如何选择项目:)

下次试试:)

我很可能错了,但我相信您需要在if语句中的数字之前和之后使用[]。