CREATE TABLE `user_addr` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(32) DEFAULT NULL,
`mobile` varchar(21) DEFAULT NULL,
`area` varchar(255) DEFAULT NULL,
`address` varchar(255) DEFAULT NULL,
`is_default` int(10) unsigned DEFAULT '0',
`user_id` int(11) unsigned DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=55 DEFAULT CHARSET=utf8;
代码:
$data = [
'name' => '测试',
'mobile' => '110',
'area' => '中国',
'address' => '天安门',
'is_default' => 1,
'user_id' => 100
];
$userAddr = new UserAddr();
$userAddr->save($data);
echo $userAddr->getLastSql();
问题?
is_default我指定是1,通过dump打印是正常的,每次插入都变成了0,通过插入sql语句,发现插入的时候,变成了0,这是什么问题呢。
array(6) {
["name"] => string(6) "测试"
["mobile"] => string(3) "110"
["area"] => string(6) "中国"
["address"] => string(9) "天安门"
["is_default"] => int(1)
["user_id"] => int(100)
}
INSERT INTO `user_addr` (`name` , `mobile` , `area` , `address` , `is_default` , `user_id`) VALUES ('测试' , '110' , '中国' , '天安门' , 0 , 100)
最佳答案
