以下代码不打印任何内容:
$bool_val = (bool)false;
echo $bool_val;
Run Code Online (Sandbox Code Playgroud)
但是下面的代码打印出来1:
$bool_val = (bool)true;
echo $bool_val;
Run Code Online (Sandbox Code Playgroud)
有没有更好的方式来打印0或false时$bool_val是false不是增加一个if声明?
Dan*_*man 237
echo $bool_val ? 'true' : 'false';
Run Code Online (Sandbox Code Playgroud)
或者,如果您只想在错误时输出:
echo !$bool_val ? 'false' : '';
Run Code Online (Sandbox Code Playgroud)
Saa*_*aad 61
这是最简单的方法:
$text = var_export($bool_value,true);
echo $text;
Run Code Online (Sandbox Code Playgroud)
要么
var_export($bool_value)
Run Code Online (Sandbox Code Playgroud)
如果第二个参数不为true,它将直接输出结果.
Ign*_*ams 35
不,因为另一个选择是修改Zend引擎,并且很难将其称为"更好的方式".
编辑:
如果你真的想,你可以使用一个数组:
$boolarray = Array(false => 'false', true => 'true');
echo $boolarray[false];
Run Code Online (Sandbox Code Playgroud)
ser*_*nri 27
这将按原样打印出布尔值,而不是1/0.
$bool = false;
echo json_encode($bool); //false
Run Code Online (Sandbox Code Playgroud)
Jon*_*ell 11
var_export 提供所需的功能.
这将始终打印一个值,而不是打印null或false.var_export打印它传递的参数的PHP表示,输出可以复制/粘贴回PHP.
var_export(true); // true
var_export(false); // false
var_export(1); // 1
var_export(0); // 0
var_export(null); // NULL
var_export('true'); // 'true' <-- note the quotes
var_export('false'); // 'false'
Run Code Online (Sandbox Code Playgroud)
如果你想打印字符串"true"或者"false",您可以转换为如下布尔值,但特殊性提防:
var_export((bool) true); // true
var_export((bool) false); // false
var_export((bool) 1); // true
var_export((bool) 0); // false
var_export((bool) ''); // false
var_export((bool) 'true'); // true
var_export((bool) null); // false
// !! CAREFUL WITH CASTING !!
var_export((bool) 'false'); // true
var_export((bool) '0'); // false
Run Code Online (Sandbox Code Playgroud)
小智 6
echo(var_export($var));
Run Code Online (Sandbox Code Playgroud)
when$var是布尔变量,trueorfalse会被打印出来。
该%b的选项的sprintf()将一个布尔值转换为整数:
echo sprintf("False will print as %b", false); //False will print as 0
echo sprintf("True will print as %b", true); //True will print as 1
Run Code Online (Sandbox Code Playgroud)
如果你不熟悉的话:你可以给这个函数的参数的任意量,同时第一个应该是您与替换字符串像五香输出中的字符串%b或%s通用字符串替换。
每个模式将按顺序替换为参数:
echo sprintf("<h1>%s</h1><p>%s<br/>%s</p>", "Neat Headline", "First Line in the paragraph", "My last words before this demo is over");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
139247 次 |
| 最近记录: |