PHP7:
函数settype()
将布尔文字true
和false
转换为1
为什么false
获得1?
$foo1=false;
echo "<br>foo1: ". settype ($foo1,"string"); // foo1: 1
$foo2=true;
echo "<br>foo2: ". settype ($foo2,"string"); // foo2: 1
函数strval()
将false
转换为空字符串,将true
转换为1:
$foo1=false;
echo "foo1: ". strval ($foo1); // foo1:
$foo2=true;
echo "<br>foo2: ". strval ($foo2); // foo2: 1
答案 0 :(得分:1)
因为您正在输出settype()
的返回值,不您转换的值。自转换成功以来。 settype返回true
,并以1
回显。
php > $foo = true;
php > var_dump(settype($foo, "string"), $foo);
bool(true)
string(1) "1"