Php Facebook用户表fql到json_编码

Php Facebook用户表fql到json_编码,php,facebook,Php,Facebook,我正在使用fql中的用户表。我正在将数组传递给json_encode()。Facebook json格式不正确,它排除了[]。如何将其添加到代码中 下面的代码是一个示例,但我不理解该代码 用户表 我要你的名字,uid //to get album cover $fql2 = "select src from photo where pid = '" . $values['cover_pid'] . "'"; $param2 = array( 'meth

我正在使用fql中的用户表。我正在将数组传递给json_encode()。Facebook json格式不正确,它排除了[]。如何将其添加到代码中

下面的代码是一个示例,但我不理解该代码

用户表

我要你的名字,uid

//to get album cover
    $fql2    =   "select  src from photo where pid = '" . $values['cover_pid'] . "'";
    $param2  =   array(
     'method'    => 'fql.query',
     'query'     => $fql2,
     'callback'  => ''
    );

    $fqlResult2   =   $facebook->api($param2);
    $jsarr  =   array();
    foreach( $fqlResult2 as $keys2 => $values2){
    }
    if ($values['name'] != 'Profile Pictures'){
        $jsarr['src'] = $album['src'];

            $count += 1;

    if ($count == 1){
    $outputStr .= "[";}
    else {
    $outputStr .= ",";}
    $outputStr .= json_encode($values2);
    }
}
$outputStr .= "]";
$outputStr = str_replace("{","[",$outputStr);
$outputStr = str_replace("}","]",$outputStr);
echo $outputStr;
}
?>

当您使用Facebook PHP SDK时,它会自动将返回的json对象解码为PHP数组。如果您需要一个来自它的json对象,那么在处理完它之后,您必须对它使用
json\u encode

您的php代码存在一些主要的问题。首先:

  • 您的
    foreach
    循环以下一行的
    }
    开始时即结束
  • 在哪里定义变量
    $values
    $album
  • 您正在引用
    foreach
    循环外部的
    $values2
  • 您正在添加到行
    $outputStr.=“[”;
    上的未初始化变量
  • 如果您传递
    json\u encode()
    一个正确的php数据数组,它将生成一个完整的json对象。您不需要添加任何类型的括号

起初fb也在使用PHP,所以如果他们在编码json时做了一些不正确的事情应该会很奇怪吗?:我在使用FQL,所以输出将是数组,我正在将此数组传递给json_encode,但json的格式不正确。我是如何格式化的。这是我的回答{“uid”:“4”,“name”:“ram\u00fcrmeg\u00f6zl\u00fcer”,“pic_big”:“5”、“名称”5,“5”、“名称”5“5”、“名称”5“5”、“名称”5“5”、“名称”5“5”、“名称”5“5”、“名称”5“5”、“名称”5“5”、“名称”5“5“5”、“名称”5“5”、“名称”5“5”5“名”5“名”5“名”5“5”5“名”5“名”5,“名”名”名“拉姆\U00FC手手手手手手风筒。fbcdn.fbcdn.net.净净净净净净净净净净//4149”1/4149-1-1-1-1-1-1-1-1-1-1/4149-1-1-1-1-1-1-1-1-1-1-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3。联合联合联合联合联合联合联合国我想,[]他失踪了。