Php 使用facebook graph api获取facebook用户性别

Php 使用facebook graph api获取facebook用户性别,php,Php,我做了一个代码来显示用户的朋友以及朋友的姓名、id和个人资料图片。问题是获取朋友的性别,并将代码设置在第一个代码的下方。但它似乎不起作用,但在获取我的性别信息的情况下,它会起作用 function displayUsersIcons($criteria) { $users = $criteria['users']; $nb_display = $criteria['nb_display']; $width = $criteria['width']; echo 'data'.$gen = $cr

我做了一个代码来显示用户的朋友以及朋友的姓名、id和个人资料图片。问题是获取朋友的性别,并将代码设置在第一个代码的下方。但它似乎不起作用,但在获取我的性别信息的情况下,它会起作用

 function displayUsersIcons($criteria) {
$users = $criteria['users'];
$nb_display = $criteria['nb_display'];
$width = $criteria['width'];
echo 'data'.$gen = $criteria['gen'];


if($width=='') $width="200";

if($nb_display>count($users) || $nb_display=='') $nb_display=count($users); //display value never bigger than nb users

$display = '';
for($i=0;$i<$nb_display;$i++) {

    $name = $users[$i]['name'];
    $picture = $users[$i]['picture'];
    $url = $users[$i]['url'];
    $user_id = $users[$i]['id'];
    $cookie = self::$cookie;
    if($cookie['access_token']!='') {
    $url = 'https://graph.facebook.com/'.$name.'?access_token='.$cookie['access_token'];
    //echo '<a href="'.$url.'" target="_blank">'.$url.'</a><br>';
    $data = json_decode($this->getDataFromUrl($url));

    $fb['gender'] = $data->gender;

    $gender=$fb;



        $display .= '<li class="mispan main-span" gen="'.$gender.'" data="'.$user_id.'" unme="'.$name.'" upic="'.$picture.'">';
        $display .= '<div class="thumbnail">';
        $display .= '<h3 class="miheader">'.$name.'</h3>';
    $display .= '<a href="'.$url.'" target="_blank" title="'.$name.'">';
    $display .= '<div class="miprofile-pic-cnt" style="background-image:url('.$picture.')" ></div>';
    $display .= '</a>';
    $display .= '<div class="caption" style="text-align:center;">';
    $display .= '<p><a href="#" class="btn kssico miclickks"><img src="Iconos/lips.png" /></a> <a href="#" class="btn bdico miclickbd"><img src="Iconos/bed.png" /></a></p>';
    $display .= '</div>';
    $display .= '</div>';
    $display .= '</li>';            



}
return $display;
函数displayUsersIcons($criteria){
$users=$criteria['users'];
$nb_display=$criteria['nb_display'];
$width=$criteria['width'];
回显“数据”。$gen=$criteria['gen'];
如果($width='')$width=“200”;
if($nb_display>count($users)|$nb_display=='')$nb_display=count($users);//显示值永远不大于nb users
$display='';
对于($i=0;$igetDataFromUrl($url));
$fb['gender']=$data->gender;
$gender=$fb;
$display.='
  • ”; $display.=''; $display.=''.$name'; $display.=''; $display.=''; $display.='

    '; $display.=''; $display.=''; $display.='
  • '; } 返回$display;
    }

    获得朋友的代码

    $cookie = self::$cookie;
    if($cookie['access_token']!='') {
    $url = 'https://graph.facebook.com/'.$name.'?access_token='.$cookie['access_token'];
    //echo '<a href="'.$url.'" target="_blank">'.$url.'</a><br>';
    $data = json_decode($this->getDataFromUrl($url));
    
    $fb['gender'] = $data->gender;
    
    $gender=$fb;
    
    $cookie=self::$cookie;
    如果($cookie['access_token']!=''){
    $url='1https://graph.facebook.com/“.$name.”访问令牌=“.$cookie['access\u-token'];
    //回声“
    ”; $data=json_decode($this->getDataFromUrl($url)); $fb['gender']=$data->gender; $gender=$fb;
    http://graph.facebook.com/?fields=gender
    
    fields=gender
    为您提供给定facebook id的性别。

    http://graph.facebook.com/?fields=gender
    

    fields=gender
    为您提供给定facebook id的性别。

    …如果用户的权限允许公开获取此字段。对于如此大的代码,这是一个非常优雅的解决方案。哈哈。它非常有魅力。谢谢。@BenMarten。我们在我们的项目中使用了它,并且仍然有效。您是否遇到了一个特定的问题?它确实存在如果您有应用程序\u范围的\u用户\u id,则不工作:(有什么想法吗?解决方法?…如果用户的权限允许公开此字段。对于如此大的代码来说,这是一个非常优雅的解决方案。哈哈。它工作得很好,谢谢。@BenMarten有。我们在我们的项目中使用它,并且仍然有效。您是否知道有一个特定的问题?如果您有一个应用程序范围的用户id,它实际上不起作用:(有什么想法吗?变通办法?
    http://graph.facebook.com/<facebook_id>?fields=gender