$app_id = 'my_app_id';
$app_sec = 'my_app_secret';
session_start();
require_once 'fb_sdk/autoload.php';
use Facebook\FacebookSession;
use Facebook\FacebookRequest;
use Facebook\GraphUser;
use Facebook\FacebookRequestException;
use Facebook\FacebookRedirectLoginHelper;
FacebookSession::setDefaultApplication( $app_id , $app_sec );
$graph_url = "https://graph.facebook.com/search?&type=user&locale=en_US&q=randy+orton&limit=2&access_token=my_access_token";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $graph_url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);
$data = json_decode($result, true);
echo "<pre>";
var_dump($data);
echo "</pre>";
运行后获取数据:
array(2) {
["data"]=>
array(2) {
[0]=>
array(2) {
["name"]=>
string(11) "Randy Orton"
["id"]=>
string(15) "504099376411440"
}
[1]=>
array(2) {
["name"]=>
string(11) "Randy Orton"
["id"]=>
string(16) "1458654707784850"
}
}
但是我无法提取数组元素。我尝试了不同的组合,希望只从返回的数据中获取名称,但这似乎不起作用。
var_dump($data);
var_dump($data['name']);
var_dump($data['data']['name']);
var_dump($result['name']);
var_dump($result['data']['name']);
如何仅从Facebook ???中返回的数据打印名称
答案 0 :(得分:0)
$ data ['data']是一个数组。所以你必须像下面那样打电话
var_dump($data['data'][0]['name']);
打印所有名称,以循环数据
for($i=0; $i<count($data['data']); $i++) {
var_dump($data['data'][$i]['name']);
}