关于3.2.3版本读取sqlite大小写问题

浏览:717 发布日期:2015/06/10 分类:技术分享 关键字: sqlite 3.2.3 大小写
背景: 一个项目中使用了sqlite来配置数据库数据在前端的显示方式
配置情况: 前端Js代码Ajax读取返回的字符串并执行成为对象,然后添加到显示中
问题: ThinkPhp读取的Sqlite所有列名称均为小写,导致无法在Js中识别出设置情况
例如:
数据表中: 列名称 Column Disable====>对应设置项
值 ID True======>对应设置值
输出的Js代码: column:'ID',disable:'True'
有么解决方案啊,兄弟们,除了手工替换指定的列名
=========================================
自己解决了,参考源代码: Db.class.php中有未在文档提及的配置参数

'DB_PARAMS'=>array(),//配置PDO驱动属性
默认配置为
PDO::ATTR_CASE => PDO::CASE_LOWER,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_ORACLE_NULLS => PDO::NULL_NATURAL,
PDO::ATTR_STRINGIFY_FETCHES => false,
可以继续设置其他配置
我按Php PDO手册修改参数为
'DB_PARAMS'=>[
PDO::ATTR_CASE => PDO::CASE_NATURAL,//保持原大小写
PDO::ATTR_ORACLE_NULLS => PDO::NULL_EMPTY_STRING,//替换空字符串为Null
],
即解决问题,目前未发现出现其他问题,供各位参考
最佳答案
评论( 相关
后面还有条评论,点击查看>>