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

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

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

表userには2つの文字列、id、name
表user_friendには3つの文字列、id、userid、friendid

$query = $this->db->query('SELECT * FROM user where id=46' ) ; U $ user = $ query-& gt;
$ queryFriend = $ this-& gt; query ('select*from userid ='. $ User-& gt; ID) ; $ Userfriend =$queryfriend->result();

次の JSON 形式を出力したいのですが、どうすればよいですか?
"user": {
"id": "46",
"name": "john"、
"userfriend":[{
"id": "13"、
"userid": "46"、
"friendid": "43"
"、
" userid ":" "46"、
"friendId": "44" 。




ディスカッションに返信 (解決策)

print_r($userfriend);
すべて見る
とは

print_r($userfriend) の結果は次のようになります以下;

Array ( [0] => stdClass オブジェクト ( [id] => 13 [userId] => 46 [friendId] => 43 ) [1] = > stdClass オブジェクト ( [id] => ; 15 [ユーザー ID] => 46 [友達 ID] => 44 ) [2] => stdClass オブジェクト ([id] => 46 [友達 ID] => 45 )
ユーザーフレンド出力データベース内の対応する [] 形式を確認してください

これを試してください

$user['userfriend']=$userfriend;
$data['user']= $user;

$user['userfriend']=$userfriend;
$data['user']=$user;
出力は次のとおりです
{
"ユーザー": {
"0": {
"id": "45",
"ニックネーム": "ジェリー",
"性別": "1",
"誕生日": "2000 年 10 月 1 日",
" avatar": "upload/user/45/avatar/0434541421051694278.jpg"、
" " 5"、
"userId": "45"、
"friendId" : "3"、
"endTime": "1426745161"
「userId」: "45"、
"friendId": 「5」、
「endTime」: "1426745161"
「friendId」: "44"、
"endTime": "1426745161"
" id": "10 "、
" userid ":" 45 "、
" friendid ":" 46 "、
" endtime ":" 1426745161 "。
1). 2 つのテーブルを結合します
2). ループして新しい配列を構築します

追加:
json_encode() は UTF-8 のエンコードに注意してください

以上です。

$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();$data = array();$data['user']['id'] = $user[0]['id'];$data['user']['name'] = $user[0]['name'];$data['user']['userfriend'] = $userfriend;echo json_encode($data);


まずすべてのユーザーを削除し、次に foreach ループを使用して各ユーザーの友達を削除し、それらを値に保存します

正しいコードは次のとおりです。ありがとうございます
$user = $query->result_array();
$data['userfriend'] = $userfriend; $result =array('result' => array('status' => '1', 'message' => 'ログイン成功', 'user' => $data));
$result = array ( ' ユーザー' => $data);
echo json_encode($result);

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