Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php foreach循环中的facebook FQL查询性能?_Php_Facebook_Performance_Foreach - Fatal编程技术网

Php foreach循环中的facebook FQL查询性能?

Php foreach循环中的facebook FQL查询性能?,php,facebook,performance,foreach,Php,Facebook,Performance,Foreach,我试图从facebook的FQL请求一些信息,但是请求有点慢 $friend = "SELECT uid2 FROM friend WHERE uid1 = me() LIMIT 30"; $friendSQL = $facebook->fql($friend); foreach ($friendSQL as $friends_id){ $uid2 = $friends_id['uid2']; $query = "SELECT uid,username,nam

我试图从facebook的FQL请求一些信息,但是请求有点慢

$friend = "SELECT uid2 FROM friend WHERE uid1 = me() LIMIT 30";

  $friendSQL = $facebook->fql($friend);
  foreach ($friendSQL as $friends_id){
    $uid2 = $friends_id['uid2']; 
     $query = "SELECT uid,username,name,pic_small FROM user WHERE uid='".$uid2."'";
     $friend_info = $facebook->fql($query);
    echo "<pre>";
    print_r($friend_info);
    echo "</pre>";
  }
$friend=“从朋友中选择uid2,其中uid1=me()限制30”;
$friendSQL=$facebook->fql($friend);
foreach($friendSQL作为$friends\u id){
$uid2=$friends_id['uid2'];
$query=“从用户中选择uid、用户名、名称、pic_small,其中uid=””$uid2。“”;
$friend_info=$facebook->fql($query);
回声“;
打印(朋友信息);
回声“;
}
因此,基本上,我得到了30个朋友的列表,我试图使用foreach循环从
uid2
(这是我的朋友)获取其他信息

我注意到请求很慢。有没有其他方法可以获得我朋友的信息


谢谢

您的脚本速度很慢,因为它在每次迭代中都会发出新的HTTP请求,而每个新请求都会花费大量时间。正确的方法是使用。使用multiquery,您可以在一个HTTP请求中获得所需的所有信息,而无需使用foreach。

您的select语句可能类似于:


这样你就不必再使用循环了。这与FQL Multiquery几乎相同。

非常好!我也正要发布这个FQL。
SELECT uid,username,name,pic_small FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me() LIMIT 30)