2015-02-11 81 views
0

我正在使用函数“file_get_contents”获取共享facebook上的链接总数。链接facebook分享次数file_get_contents

这是我的代码:

$url = x; 
$data = file_get_contents('http://graph.facebook.com/?id=".$url'); 
$obj = json_decode($data, true); 
$like_no = intval($obj->{'shares'}); 
echo $like_no; 

我尝试这样做,这是行不通的。但是,我的服务器上启用了file_get_contents,所以我找不到解决方案...如果你能帮助我!在此先感谢:)

+0

是什么'$ data'? – WizKid 2015-02-11 22:47:11

+0

$ data是我从facebook图中得到的。 例如:http://graph.facebook.com/?id=http://facebook.com – polYc 2015-02-11 22:52:25

回答

2

感谢您的帮助我找到解决方案并没有API(我很高兴:))

对于人intereset在:

$url = x; 
$data = file_get_contents('http://api.facebook.com/restserver.php?method=links.getStats&format=json&urls='.$url); 
$obj = json_decode($data, true); 
$like_no = $obj[0]['total_count']; 
+0

Yeap!对此感到抱歉。 – bandrei2408 2015-02-11 23:43:52

+0

毫无疑问,你对我的要求非常反应,值得一错! :) – polYc 2015-02-12 00:44:57

0

您需要访问令牌才能访问该链接,可通过注册为开发人员并创建应用程序来获取该链接。

有些链接可能会有所帮助:

1)Facebook的开发者:https://developers.facebook.com/

2)PHP SDK:https://developers.facebook.com/docs/reference/php/4.0.0

3)图形API文档:https://developers.facebook.com/docs/graph-api

您需要连接到使用OAuth2客户端的facebook图形api,它需要你阅读他们的文档。

L.E.看来我错了。您实际上并不需要访问令牌来获取这些信息。

检查这个答案:Get the number of facebook *shares* of a specific URL

+0

谢谢我在想我不需要它。你有一个小黑客快速认证(我有应用程序和密钥)。我想不使用Facebook的PHP SDK,因为我认为它会减慢我的网站。 – polYc 2015-02-11 22:58:40

+0

首先,SDK不会减慢你的网站。其次,最简单的方法是使用他们的PHP SDK,否则您将不得不手动编写OAuth2客户端库。 – bandrei2408 2015-02-11 23:01:25

+0

因此,如果我必须使用他们的SDK,我需要将那些文件集成到我的网站。他们说“Facebook PHP for PHP v4需要PHP 5.4或更高版本”。我有一个使用以前版本的PHP的wordpress网站。我能怎么做? – polYc 2015-02-11 23:07:14