Can't use function return value in write context在尝试empty(strip_tags($string))使用三元语句中的条件作为赋值时,我得到了错误.所以为了测试,我摆脱了任务和三元语句.但是,当它显然不在写入上下文中时,我仍然会收到此错误.
想想看,我不确定是什么write context意思 - 我认为这与作业有关,但我不能说我肯定知道.
为什么这不能像我认为的那样工作?这对我来说似乎很直截了当.我错过了什么?
$ cat test.php
<?
$string = "<br/>";
if ( empty(strip_tags($string)) ) {
echo "It's empty.\n";
} else {
echo "It's not empty.\n";
}
$ php test.php
PHP Fatal error: Can't use function return value in write context in test.php on line 5
Run Code Online (Sandbox Code Playgroud)
empty()要求你对变量进行操作,而不是函数的输出.而是将输出存储strip_tags()到变量中.
$stripped = strip_tags($string);
if ( empty($stripped) ) {
echo "It's empty.\n";
} else {
echo "It's not empty.\n";
}
Run Code Online (Sandbox Code Playgroud)
这在empty()文档中解释:
注意:
empty()只检查变量,否则会导致解析错误.换句话说,以下方法不起作用:empty(trim($name)).
| 归档时间: |
|
| 查看次数: |
602 次 |
| 最近记录: |