をPHPの配列を作成し、私はGROUP_CONCATを使用してMySQLのクエリからデータを取得:MySQLのGROUP_CONCAT
GROUP_CONCAT('id => ',assignments.userid,', assigned => ',assignments.assigned SEPARATOR ';') as assigneeids
そして、PHPの配列に変換しようとしています。
$assignees = explode(';', $ticket['assigneeids']);
foreach($assignees as $assignee) {
echo "$assignee\n"; // $assignee['id'] outputs 'i'
echo gettype($assignee) . '\n';
}
残念ながら、$assignee
は配列ではなく文字列になります。出力:
id => 1001, assigned => 1419648601
string
id => 1002, assigned => 1419649207
string
私は間違っていますか?
は次のように評価されるためには、SQLクエリからPHPコードを生成しようとすると、それを期待しているINGの行う必要がありますPHP?それは 'eval()'なしでは動作しませんが、これはこれに近づく方法ではありません。あなたの目標は、サブ配列 'array( 'id' => 1234、 'assigned' => 987654)'を含む2D構造の配列を生成することであることを明確にできますか? –
はい、これは私の目標です。 –
ソーステーブルのサンプルを投稿できますか?通常のフェッチループでは単純なクエリが必要になりますが、配列操作は少ししか必要ありません。このGROUP_CONCAT()は大規模なクエリの一部ですか、それともクエリによって返されたのはそれだけでしたか? –