php数组显示不出,数组动态列读不出数据

$list=$m->query($sql);//查询结果$columns=$this->getcolumns($tableName); //模型列名foreach ($list as $l){foreach ($columns as $c){ $l[$c];//数据读不出来}}

如以上 从数据库把所有列都出来 然后动态 根据列名动态取数据取不出来

回复讨论(解决方案)

因为要 返回json 表列有点多 一个个写有点复杂 所以找了个取列明的方法

然而不能动态读取数据么

print_r($list);

print_r($columns);

看看都有什么

print_r($list);

print_r($columns);

看看都有什么

好像发现一个问题

$l['user_name'] 能显示数据 $l['USER_NAME'] 换了大小写就不显示了 php数组区分大小写么

数据库里是大写查询出来的 读的时候都用小写?

对!php数组区分大小写$a = array('a' => 1, 'A' => 2);print_r($a); Array( [a] => 1 [A] => 2)

由于数据库查询时,字段名可能大小写不统一

所以你可对读到的数组用 array_change_key_case 函数统一将关联键转换成大写或小写

由于数据库查询时,字段名可能大小写不统一

所以你可对读到的数组用 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 是二维数组,不然也不会有 foreach ($list as $l)

所以要对 $l 做 array_change_key_case

foreach ($list as $l)

{

$l = array_change_key_case($l, CASE_UPPER);

foreach ($columns as $c)

{

echo $l[$c];

}

}

既然你是 foreach ($list as $l)

那么显然 $list 是二维数组,不然也不会有 foreach ($list as $l)

所以要对 $l 做 array_change_key_case

}

了解了

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值