私はYii2フレームワークを使ってプロジェクトを開発していますが、私のプロジェクトではSQLの単一の列に配列を送りました。PHP配列jsonを変換してSqlに送信し、配列としてSqlからデータをフェッチする
Array(
[0] => Array
(
[0] => Array
(
[0] => first_name
[1] => last_name
[2] => age
[3] => sex
)
)
[1] => Array
(
[0] => Array
(
[0] => Andrew
[1] => Lugiano
[2] => 18
[3] => Male
)
)
[2] => Array
(
[0] => Array
(
[0] => Elizabeth
[1] => Natari
[2] => 21
[3] => Female
)
)
)
をし、これが私のCustomHeaderControllerでコードである:配列を前に、SQLに送信
$encoded_array = json_encode($arrayData);
$command_2 = "INSERT INTO data(array_data) VALUES('$encoded_array')";
$query_2 = Yii::$app->db->createCommand($command_2)->execute();
colum Sqlのn名はarray_data
で、データ型はmediumtextで、テーブル名はdata
です。
、その後、私は、SQLからSaveControllerを通じてそれを取り戻すためにしようとしましたが、これは私はSQLからそのデータを取得するために使用されたコードです。
$sql = $connection->createCommand("SELECT array_data FROM data WHERE user_id=$userId");
$modelHeader = $sql->queryColumn();
が、私はこれを得ました結果:
アレイ ( [0] => [[[ "FIRST_NAME"、 '' last_nameの ''、 '' 年齢 ''、 "セックス"]]、[[ "アンドリュー"、 "Lugiano "、" 18 "、" Male "]]、[[" Elizabeth "、" Natari "、" 21 "、" Female "]]] )
私の予想結果ではなかった
、これは私が私のプロジェクトのために必要なもの(ちょうど前に、SQLにsendedでは同様)である
アレイ ( [0] =>配列 ( [0] =>配列 は)( [0] => FIRST_NAME [1] => [2] =>年齢 [3] =>性別 をLAST_NAME) 0 [1] =>配列 ( [0] =>配列 ( [0] =>アンドリュー [1] => Lugiano [2] => 18 [3] =>男性 ) ) [2] =>配列 ( [0] =>配列 ( [0] =>エリザベス [1] => Natari [2] => 21 [3] =>女性 ) ) )
私は期待どおりの結果と同じようにSQLからデータを取得できますか?
あなたは 'クエリ結果をjson_decode'を忘れてしまった... – deceze
それはない' json_decode'でき、のためにこのような'$ sql-> queryColumn();'コードは結果を直接配列に設定します。たぶんあなたは私が 'json_decode'することができるように、結果を文字列として得る方法を知っていますか? @deceze – Blackjack
なぜ私はダウンボートを得たのか分かりますか? thanks – Blackjack