私は友達を取得するために API 呼び出しを行っています。このために取得した配列は、データベースで見つかった ID の配列を「フィルター処理」する必要があります。現在、結果は単に「null」です。
これは配列です (変数 $friends として定義されています):
[0]=>
array(2) {
["name"]=>
string(17) "One friends name"
["id"]=>
string(8) "FRIEND_ID"
}
[1]=>
array(2) {
["name"]=>
string(13) "Another friends name"
["id"]=>
string(9) "ANOTHER_FRIEND_ID"
}
[2]=>
array(2) {
["name"]=>
string(22) "Another friends name"
["id"]=>
string(9) "ANOTHER_FRIEND_ID"
}
そして、「データベース内のIDで配列をフィルタリングしたいPHPコード:
$query_top_list_friends = mysql_query("SELECT * FROM ".$DBprefix."users
WHERE center_id='" . $personal['center_id'] . "' ORDER BY
workouts DESC LIMIT 10");
$i=0;
$friends = $friends['data'];
foreach($friends as $friend)
{
while ($top_list_friends = mysql_fetch_array($query_top_list_friends))
{
if($friend['id']==$top_list_friends['fid'])
{
$i++;
echo "<div class='user'>";
echo "<span class='number'>" . $i . "</span>";
echo "<span class='name'>" . $top_list_friends['name'] . "</span>";
echo "<span class='workouts'>" . $top_list_friends['workouts'] . "</span>";
echo "</div>";
}
}
}
助言がありますか?
アップデート
これにいくつかの変更を加えましたが、まだ結果はありません:
$friends = array($friends['data']);
while ($top_list_friends = mysql_fetch_array($query_top_list_friends)) {
if($friend[$top_list_friends['fid']]) {
$i++;
echo "<div class='user'>";
echo "<span class='number'>" . $i . "</span>";
echo "<span class='name'>" . $top_list_friends['name'] . "</span>";
echo "<span class='workouts'>" . $top_list_friends['workouts'] . "</span>";
echo "</div>";
}
}