ホームページ >バックエンド開発 >PHPチュートリアル >JSON出力用にデータベーステーブルのレコードに別のフィールドを追加する方法

JSON出力用にデータベーステーブルのレコードに別のフィールドを追加する方法

WBOY
WBOYオリジナル
2016-06-13 12:25:191284ブラウズ

JSON 出力用にデータベース テーブルのレコードに別のフィールドを追加する方法
テーブル user には id、name の 2 つのフィールドがあります
テーブル user_friend には id、userid、friendid の 3 つのフィールドがあります

$query = $this->db->query('SELECT * FROM user where id=46' );
$user=$query->row();
$queryfriend= $this- >db->query('SELECT * FROM user_friend where userid='.$user->id );
$userfriend=$queryfriend->result();

親愛なる皆さん、以下のjson形式を出力したいのですが、どうすればよいでしょうか?
{
"user": {
"id": "46",
"name": "john",
"ユーザーフレンド": [ {
"id": "13",
"userId": "46",
"friendId": "43"
> "id": "15" 、
"userId": "46"、
"friendId": "44"
}
]
}
}

------解決策----------------------
print_r($userfriend);すべて見てください

とは何ですか------解決策----------------------
これを試してください
$user['userfriend'] =$userfriend;
$data['user']=$user;
echo json_encode($data);

------ 解決策 --------- -------------
私の考え: 1. json を結合
1) ループ $user 、ネストされたループ $userfriend
2.配列
1). 2 つのテーブル間の結合クエリ
2). 新しい配列

を構築するためのループ 追加:
json_encode() は UTF -8 のエンコードに注意してください

------解決策のアイデア-----------
以上です。

<br />$query = $this->db->query('SELECT * FROM user where id=46' );<br />$user=$query->row();<br />$queryfriend= $this->db->query('SELECT * FROM user_friend where userid='.$user->id );<br />$userfriend=$queryfriend->result();<br /><br />$data = array();<br />$data['user']['id'] = $user[0]['id'];<br />$data['user']['name'] = $user[0]['name'];<br />$data['user']['userfriend'] = $userfriend;<br /><br />echo json_encode($data);<br />
-----解決策----------------------
取り出してくださいまずすべてのユーザーに対して、foreach ループは各ユーザーの友達を取り出し、値
に保存します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。