php复选框默认值';在';上;


php what does checkbox default value 'on'

最近在处理复选框时,我必须完成以下测试代码:

<?php if ( isset( $_POST['myname'] ) ) {
$myvalue = $_POST['myname'];
echo $myvalue; } ?>
<form method="post">
<input type="checkbox" name="myname" />
<input type="submit" name="send" /></form>

所以,我在表单提交后得到的输出是,当复选框被选中时,它会"打印"在其他任何东西上(如果复选框上没有提供值)。它不是应该在选中复选框时打印1(true)吗。"on"在PHP中是什么意思?

如果不为复选框提供value属性,则其值将为on

<input type="checkbox" name="myname" />

$_POST['myname']值为on

<input type="checkbox" name="myname" value="1" />

$_POST['myname']值为1

在这两种情况下,当复选框未选中时,它不会出现在$_POST(未设置)