【问题标题】:facebook api post return valuefacebook api post返回值
【发布时间】:2014-03-14 09:30:18
【问题描述】:

我使用 php facebook api 在我的墙上发布了一些东西。 像这样:

$postid = $facebook->api('/JonasDevelopment/feed', 'post', array('message'=>  $postcontent , 'access_token' => "myaccesstoken", 'cb' => ''));

我在 $postid 中得到的结果看起来像 json:

a:1:{s:2:"id";s:31:"491965997521672_714151951969741";}

但是,当我获取帖子 ID 时:

$valuearray = json_decode($postid, true);
echo $valuearray['id'];

什么都没有。

有什么建议吗?

【问题讨论】:

  • FB 的帖子 ID 的返回格式似乎非常不一致。这里的第一部分是用户 ID——所以去掉它,这样你就有 714151951969741——有了这个 ID,你应该能够通过 Graph API 访问帖子。

标签: php facebook facebook-graph-api facebook-php-sdk


【解决方案1】:

$postid 的值对我来说似乎是错误的。无论如何,我认为您正在以错误的方式访问 id 的值,而是试试这个-

echo $valuearray->{'id'};

你也可以通过转储$valuearray-var_dump($valuearray)的值来调试

【讨论】:

  • 没有错,因为json_decode的第二个参数。
  • @CBroe,是的,我明白了
【解决方案2】:

其实我不需要解码 json,它是这样工作的:

 var_dump(strstr($postid['id'], '_', true));

谢谢你的帮助:)

【讨论】:

    【解决方案3】:

    尝试使用这些代码

     $ret_obj = $facebook->api('/me/feed', 'POST',
                                    array(
                                      'link' => 'www.example.com',
                                      'message' => 'Posting with the PHP SDK!'
                                 ));
        echo '<pre>Post ID: ' . $ret_obj['id'] . '</pre>';
    

    它会返回你发布的 id

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多