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

时间:2017-09-26 20:22:43

标签: php

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

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

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

1 个答案:

答案 0 :(得分:2)

foreach中,as左侧的表达式应该是您要迭代的数组,而右侧的表达式是一个被每个值覆盖的变量数组中的元素。

您收到错误的原因是因为php正在尝试将$permission的元素写入explode(',', $permissionString),但这会返回错误,因为explode(',', $permissionString)是一个函数调用,而不是变量,只能写入变量。

要解决此问题,请尝试按照as的顺序撤消,如下所示:

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