Fez*_*sta 1 php arrays pdo boolean
我正在尝试将一个 false 布尔值存储到一个数组中,以将其作为 PDO 准备好的语句中的值传递:
$a = Array('bool' => '0');
if($a['bool'] === '1') {
$a['bool'] = true;
}
else {
$a['bool'] = false;
}
print_r($a);
Run Code Online (Sandbox Code Playgroud)
结果是:
Array
(
[bool] =>
)
Run Code Online (Sandbox Code Playgroud)
我希望:
Array
(
[bool] => 0
)
Run Code Online (Sandbox Code Playgroud)
因为如果我存储一个真正的布尔值,print_r 函数将打印true为 'bool' 的值。
将 $['bool'] 设为空不会bit将错误值发送到我的字段并使我的查询无效。
该值通过以下方式传递:
$sth->execute( $a );
Run Code Online (Sandbox Code Playgroud)
我该如何解决问题?
对于谁说“使用 1 和 0”,好吧,PDO 不接受整数 1 和 0 作为布尔值,它需要真正的布尔值。
您可以使用 1 或 0 来表示真或假。否则,下面是另一种方法:
if($a['bool'] === '1') {
$a['bool'] = intval(true);
} else {
$a['bool'] = intval(false);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11159 次 |
| 最近记录: |