修改DbPdo.class.php数据库驱动类,杜绝Name索引未定义提示

浏览:858 发布日期:2012/04/16
3.0 - 普通 - 已处理
修改DbPdo.class.php数据库驱动类,杜绝Name索引未定义提示

在开发时,经常会查看日志文件,总是看到以下提示:
NOTIC: [8] Undefined index: Name DbPdo.class.php 第 305 行.

查看DbPdo.class.php文件,出现此提示的原因是MySQL中获取表结构的DESCRIBE语句返回的结果集中并不包含Name字段,执行到下面的语句就会报告Name索引未定义:

$val['Name'] = isset($val['name'])?$val['name']:$val['Name'];

解决办法:

$val = array_change_key_case($val);
$val['name'] = isset($val['name'])?$val['name']:"";
$val['type'] = isset($val['type'])?$val['type']:"";
$name= strtolower(isset($val['field'])?$val['field']:$val['name']);
$info[$name] = array(
'name' => $name ,
'type' => $val['type'],
'notnull' => (bool)(((isset($val['null'])) && ($val['null'] === '')) || ((isset($val['notnull'])) && ($val['notnull'] === ''))), // not null is empty, null is yes
'default' => isset($val['default'])? $val['default'] :(isset($val['dflt_value'])?$val['dflt_value']:""),
'primary' => isset($val['key'])?strtolower($val['key']) == 'pri':(isset($val['pk'])?$val['pk']:false),
'autoinc' => isset($val['extra'])?strtolower($val['extra']) == 'auto_increment':(isset($val['key'])?$val['key']:false),
评论(
后面还有条评论,点击查看>>