如下所示,网页端form select提交的boolean选项是以字符串形式提交的。
<select name="godeep" class="form-control">
<option value="true">true</option>
<option value="false">false</option>
</select>
那么提交后的数据是
后端接收到的数据是 $arr['godeep_val'] = "true";假设$str = $arr['godeep_val'];相关判断也只能是按照字符串“true”来进行处理if($str === 'true'),不能直接按照bool类型的判断处理if($str),这样没有任何效果。
那么在后端进行处理的时候,有时候需要将"true","false"转换成boolean类型的数据,只需要通过eval进行如下操作:
$str = "false";
eval("return $str;");