增加db_fields_strict配置参数,用于设置当字段不存在的数据写入的时候是否抛出异常 ,默认为true

This commit is contained in:
thinkphp
2016-01-19 20:01:33 +08:00
parent 6690126429
commit 7a1dc48dfa
2 changed files with 4 additions and 0 deletions

View File

@@ -152,6 +152,7 @@ return [
// 是否启用多状态数据库配置 如果启用的话 需要跟随app_status配置不同的数据库信息
'use_db_switch' => false,
'db_fields_strict' => true,
'database' => [
// 数据库类型
'type' => 'mysql',

View File

@@ -195,6 +195,9 @@ class Model
if (!empty($fields)) {
foreach ($data as $key => $val) {
if (!in_array($key, $fields, true)) {
if (Config::get('db_fields_strict')) {
throw new Exception(' fields not exists :[' . $key . '=>' . $val . ']');
}
unset($data[$key]);
} elseif (is_scalar($val) && empty($this->options['bind'][':' . $key])) {
// 字段类型检查