【求助】TP5.0中array_change_key_case的函数使用

浏览:1098 发布日期:2016/02/03 分类:求助交流
TP5.0 RC1版中发现一个小问题

thinkphp\library\think\db\driver\Mysql.php中第57行有如下代码$result = array_change_key_case($result);意思是将得到的表信息数组的键值转为小写,(我在数据库链接配置的参数中使用了,PDO::ATTR_CASE => PDO::CASE_NATURAL,键值是以实际大小写命名输出的),以便下面的几行调用,但实际发现这行代码,并没有起到转换作用。

与是,我手写了下面代码,发现确实不行        $cc = [
            '0'=>[
                'Abc'=>'asdfasdf',
                'BBAbc'=>'asdfasdf',
                'AbDDc'=>'asdfasdf',
                
            ]
        ];
        $tmp = array_change_key_case($cc);
        dump($tmp);
        return;
实际打印出来的是array (size=1)
  0 => 
    array (size=3)
      'Abc' => string 'asdfasdf' (length=8)
      'BBAbc' => string 'asdfasdf' (length=8)
      'AbDDc' => string 'asdfasdf' (length=8)
也就是说,array_change_key_case对二数组无效,但对一维数组是有效的,

请教一下,为啥为效,是否我的PHP还需要配置一下才能有效?

主要目的是想原样输出表中的字段名
最佳答案
评论( 相关
后面还有条评论,点击查看>>