PHP 问题:打印布尔值

问题

下面的代码会打印什么,为什么?

echo TRUE;



 

回答

这里的答案是“1”,因为当我们以这种方式打印出一个布尔值时,它会被转换成一个字符串,从而得到整数值 1。如果你尝试用假值做同样的事情,你将不会得到任何输出(空字符串)。记住这一点很重要,因为在打印调试消息时,即使使用print_r().

打印出布尔值的正确方法是使用该var_dump()函数。这将打印出正确的值,并告诉您这是什么数据类型。

var_dump(TRUE); // 布尔(真)

您还可以使用 if 语句以正确的方式打印出值。

$value = TRUE;

if ($value === TRUE) {

   echo 'The value is TRUE';

} else {

   echo 'The value is FALSE';

}

您还可以将 TRUE 打印为 1,将 FALSE 打印为 0,这在将值插入数据库时非常有用。为此,您可以使用该sprintf()函数将布尔值转换为整数。

print sprintf("%b", FALSE); // 打印 0

print sprintf("%b", TRUE); // 打印 1

以上是 PHP 问题:打印布尔值 的全部内容, 来源链接: utcz.com/z/327489.html

回到顶部