$list=$m->query($sql);//查询结果 $columns=$this->getcolumns($tableName); //模型列名 foreach ($list as $l) { foreach ($columns as $c) { $l[$c];//数据读不出来 } }
だってjson を返す必要があります リストにはたくさんのリストがあり、それらを 1 つずつ書くのは少し複雑なので、リストを取得する方法を見つけました
あなたは
print_r ($list);
print_r($columns);何があるか見てみましょう
問題が見つかったようです
はい! PHP 配列では大文字と小文字が区別されます
$a = array('a' => 1, 'A' => 2);print_r($a);
Array( [a] => 1 [A] => 2)
データベースをクエリするとき、フィールド名の大文字と小文字は均一ではない可能性があるため
そこで、array_change_key_case 関数を使用して、読み取った配列の関連するキーを大文字または小文字に均一に変換できます
そのため、array_change_key_case 関数を使用して、読み取った配列の関連付けられたキーを大文字または小文字に統一して変換できます
わかりました、ありがとうございます
$list=array_change_key_case($list,CASE_UPPER);foreach ($list as $l) { foreach ($columns as $c) { $l['USER_NAME'];// }}
あなたは foreach ($ list as $l) であるため
それから明らかに $list は 2 次元配列であり、そうでなければ foreach ($list as $l) は存在しませんしたがって、 $l
{ $l = array_change_key_case($l, CASE_UPPER)
foreach ($columns as $c); を実行する必要があります。
エコー $l[$ c];
あなたは foreach ($list as $l) なので、明らかに $list は 2 次元配列です。そうでなければ、foreach ($list as $l) はありません。 $l に対して array_change_key_case を実行する
}