私はバックエンドサービスから返されたJSONを持っています。php-check 2要素と同じものと見合うもの
$a='{
"post_id": [
"1",
"34",
"29",
"35",
"28",
"37"
],
"posted_by": [
"1",
"1",
"1",
"1",
"1",
"3"
],
"total_likes": [
4,
1,
1,
1,
1,
1
]
}';
JSONにはpost_id、posted_by、投稿が何件あるかがあります。 私は私の配列はこのようになります
$data = json_decode($a);
PHPで処理するための配列に変換:
stdClass Object
(
[post_id] => Array
(
[0] => 1
[1] => 34
[2] => 29
[3] => 35
[4] => 28
[5] => 37
)
[posted_by] => Array
(
[0] => 1
[1] => 1
[2] => 1
[3] => 1
[4] => 1
[5] => 3
)
[total_likes] => Array
(
[0] => 4
[1] => 1
[2] => 1
[3] => 1
[4] => 1
[5] => 1
)
)
posted_by
がユーザーです。私がしようとしているのは、ユーザーがどれくらいの好きなものを受け取り、その値を新しい配列に保存するかを見つけることです。この場合、ユーザー1は8つの好きを受け取り、ユーザー3は1つの好きなものを受け取りました。そして、私はこれを配列に保存しなければなりません。
これを達成するために、私はこのようなものを試しましたが、結果は得られませんでした。 n回目にループを実行すると、未定義のオフセットエラーが表示されます。
$total_likes=0;
$data2=array();
for($j=0; $j<sizeof($data['posted_by']);$j++)
{
if($data['posted_by'][$j] == $data['posted_by'][$j+1])
{
$data2[$j]['user'] = $data['posted_by'][$j];
$data2[$j]['likes'] = $total_likes + $data['total_likes'][$j];
}
}
このようなチェックを行う機能はありますか?
これを '$ data = json_decode($ a、TRUE);'として使用してコード内で使用するように連想配列にします。 – Saty