我在调用一个带有布尔参数的存储过程。在我的代码中,真正的值很容易作为1传递,但错误值显示为空白。但是,我的var_dump显示我的值实际上是错误的。在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:| Gala:1 |主持人:
我的目标是虚假的值传递到存储过程:
$final = insertAttendeeInfo($ind_id, $f['photo_op']);
存储过程看起来类似:
function insertAttendeeInfo($ind_id, $photo){
$insert = dbStoredProc('sp_remove_attendee_information', $ind_id, $photo);
return;
}
任何想法?
预先感谢您。
那么,你把'false'放进值中并'打印'它。显然有空的字符串。有什么问题? – zerkms
您忘记提及您的数据库系统以及您的实际数据库调用的样子。 – Tomalak
你想看什么?空白的'0'如果是,在输出它们时在每个变量前设置(int):(int)$ f ['photo_op'] – silex