0

次のように concat を使用して、MySql データから json 配列を作成しています。

$id = '5705';
$sql = 'select concat("{""type:""colName"",""id"":""$id""}") as myJson from table where etc.;

$stmt = $conn->prepare($sql);

何が起こっているかというとcolName、テーブルからデータを取得して の値を$id取得するのではなく、そのままの結果を取得してい$sqlます。どうすればそこから抜け出しcolName$id's価値を得ることができるでしょうか?

現在の結果

{""type:""colName"",""id"":""$id""}

望ましい結果

{""type:""novice"",""id"":""5705""}
//Here novice is data from colName, and 5705 is the value of $id
4

3 に答える 3

0

一重引用符を取得したため、文字列内の変数はその値に置き換えられません。二重引用符の文字列は、変数をその値で展開します

したがって、変数の実際の値を取得するために、次のように引用符を反転できます。

$sql = "select concat('...')"
于 2013-06-08T14:03:18.227 に答える