Я использую user table из fql.I передаю массив json_encode (). Формат json для Facebook не является коррективным, он исключает []. Как добавить это в свой код.
Ниже приведен пример, но я не подставил этот код.
таблица пользователя https://developers.facebook.com/docs/reference/fql/user
Я хочу имя, 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; } ?>
Когда вы используете PHP PHP SDK, он автоматически декодирует возвращенный объект json в массив PHP. Если вам нужен json-объект, вам придется использовать json_encode
после завершения обработки.
У вас есть некоторые серьезные проблемы с вашим PHP-кодом. Для начала:
foreach
заканчивается, как только он начинается с }
на следующей строке. $values
и $album
? $values2
вне вашего цикла foreach
. $outputStr .= "[";
неинициализированную переменную в свою строку $outputStr .= "[";
, json_encode()
правильный массив данных php, он сделает полный объект json. Вам не нужно будет добавлять скобки любого типа.