MySQL データベースから JSON 文字列の形式でデータを取得しようとしています。
私はこの答えを読みました:JSONはMySQLの結果をエンコードします
ただし、これは 1 つのテーブルに限定されます。複数のテーブル (userDetails からの名前、UserPurchases からの購入データなど) からデータを取得したい場合はどうすればよいですか? カスタム文字列を作成して、複数のテーブルからデータを取得し、単一のテーブルのみからのように json 文字列を作成するにはどうすればよいですか?
$query = "SELECT * FROM `thing` WHERE `id` = :thingId";
$stmt = $dbh->prepare ( $query );
$stmt->bindParam ( ":thingId" , $_GET['thingId'] );
$stmt->execute ( );
$rslt = $stmt->fetch ( );
$thingName = $rslt['name'];
$thingOwnerId = $rslt['userId'];
$thingDescription = $rslt['thingDescription'];
// Getting the thing owner details
$query = "SELECT * from `user` WHERE ( `id` = :id ) ";
$stmt = $dbh->prepare( $query );
$stmt->bindParam ( ":id" , $thingOwnerId );
$stmt->execute( );
$rslt = $stmt->fetch ( );
$thingOwnerName = $rslt['firstName']." ".$rslt['lastName'];
ここで、個別のテーブルからのこのデータから単一の json を強力にする方法を説明します。文字列には、thingName、thingOwnerId、thingDescription、thingOwnerName が含まれている必要があります。