【问题标题】:PHP: Can't use function return value in write contextPHP:不能在写上下文中使用函数返回值
【发布时间】:2017-09-26 20:22:43
【问题描述】:

不能在写上下文中使用函数返回值。

所有搜索结果响应都说它与空函数有关,但我没有使用它?

foreach ($permission as explode(',', $permissionString)) { // line 44
    if ($this->hasPermission($permission))
        $count++;
}

【问题讨论】:

  • 您在 foreach 语句中的变量顺序错误。应该是:foreach (explode(',', $permissionString) as $permission)As stated in the documentation: foreach (array_expression as $value).

标签: php


【解决方案1】:

foreach 中,as 左侧的表达式应该是您要遍历的数组,而右侧的表达式是一个变量,它会被数组中每个元素的值覆盖.

你得到错误的原因是因为php试图将$permission的元素写入explode(',', $permissionString),但这会返回错误,因为explode(',', $permissionString)是函数调用,而不是变量,只有变量可以被写入。

要解决此问题,请尝试颠倒 as 的顺序,如下所示:

foreach (explode(',', $permissionString) as $permission) {

【讨论】:

    猜你喜欢
    • 2014-09-08
    • 1970-01-01
    • 2010-12-04
    • 2015-04-13
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多