【问题标题】:Getting Can't use function return value in write context [duplicate]在写入上下文中无法使用函数返回值[重复]
【发布时间】:2016-09-02 09:29:12
【问题描述】:

我得到了主题中的错误。此外,我在谷歌上花了很长时间,发现数十个资源有相同的错误,但我仍然无法弄清楚问题是什么。 这是我的代码:

<?php
if(empty(trim($_POST["user"])) || empty(trim($_POST["text"]))) {
    echo "no luck";
  }
?>

PHP 致命错误:无法在写入上下文中使用函数返回值 /var/www/test.php 在第 2 行

【问题讨论】:

  • 你能再解释一下吗? 3v4l.org
  • 取决于 PHP 版本 empty() 需要一个变量引用,而不是表达式/函数结果。也可以使用!strlen

标签: php


【解决方案1】:

如果你参考手册,你会看到

确定一个变量是否被认为是空的。

trim 传递给empty 的结果不是变量。

所以你的选择是:

$user = trim($_POST['user']);
if (!empty($user)) {   }

或者php5.5,其中

empty() 现在支持表达式

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-14
    • 1970-01-01
    • 2017-11-01
    • 2012-06-20
    • 2011-04-22
    相关资源
    最近更新 更多