我正在调用一个带有布尔参数的存储过程。真值很容易在我的代码中作为1传递,但是错误的值显示为空白。但是,我的var_dump显示我的值实际上是假的。
$form[$i]['photo_op'] = isset($_POST['photo_op'][$array_i]) ? $_POST['photo_op'][$array_i] : false;
我的$ _POST var_dump看起来像:
["photo_op"]=> bool(false) ["gala"]=> bool(true) ["chairman"]=> bool(false)
当我打印出我的值时,它似乎是为我的'photo_op'和'主席'字段传递空字符串:
foreach($form as $f){
print "Photo OP: " . $f['photo_op'] . " | Gala: " . $f['gala'] . " | Chair: " . $f['chair'];
}
我的输出如下: 照片OP:|嘎拉:1 |主席:
我的目标是将错误值传递给存储过程:
$final = insertAttendeeInfo($ind_id, $f['photo_op']);
存储过程类似于:
function insertAttendeeInfo($ind_id, $photo){
$insert = dbStoredProc('sp_remove_attendee_information', $ind_id, $photo);
return;
}
有什么想法吗?
提前谢谢。
答案 0 :(得分:0)
使用print
函数打印变量时(或将变量连接到字符串时),其值将转换为字符串。布尔值false
将转换为空字符串。如果您想要查看变量的真实值,请使用var_dump
或var_export
代替print
。