【问题标题】:Fatal error: Can't use function return value in write context [closed]致命错误:无法在写入上下文中使用函数返回值 [关闭]
【发布时间】:2011-08-07 21:18:26
【问题描述】:

页面代码都是html,它不会加载bec。这个错误:

致命错误:无法在写入上下文第 142 行中使用函数返回值

代码:

<div>
    <div class="">
        <input type="text" id="select_shelves" name="select_shelves" class="shelves_select_and_buttons" />
        <div id="shelves_menu" >
            <ul>
                <li id="li_" onclick="printValue();">option5 <= line 142 </li>
            </ul>
        </div>
    </div>
    <div class="button">
        <input type="button" onclick="dropShelves();" id="Shelves_select_button" name="Shelves_select_button" value="" class="grey_button"/>
    </div>
</div>

【问题讨论】:

  • 这些函数是 PHP 的吗?
  • 这真的是php吗,这只是看起来像html + javascript
  • 我认为您发布的问题不够清楚。另外,您为什么要标记问题 PHP? HTML和Javascript不是更合适吗?
  • 执行foo() = 'something' 之类的操作会引发错误。也许您是在比较 = 而不是 ==...?
  • 你想对这些编辑做什么?请使用评论系统来解释您的问题。

标签: php


【解决方案1】:

你可能正在使用类似的东西:

if(empty(urFunc($foo)){
    ....
}

这是行不通的。

它是什么(在错误中查找留置权编号以找到它)将其更改为:

$foo = urFunc($bar);
if(empty($foo)){
    ....
}

应该可以解决它。

【讨论】:

  • 这不会产生那个错误。你得到的错误会有所不同(虽然会有错误)......
  • erm... 我很确定它会 (forums.devshed.com/php-development-5/…)
  • 我建议像这样回复@ircmaxell,否则我认为他不会收到通知...
  • 你真正想要的是if (!urFunc($bar))。根本不需要empty
  • @KevinVanRyckegem php.net/manual/en/function.empty.php - 在 5.5 之前,您只能在变量上使用它。
【解决方案2】:

如果后面有一些PHP,问题可能是这样调用函数empty($var):

if(empty($var = getMyVar())) { ... }

你应该这样称呼它:

$var = getMyVar();
if(empty($var)) { ... }

或者更好(正如 deceze 指出的那样)

if(!getMyVar()) { ... }

问题还导致其他类似函数(isset、is_a、is_null 等)。

【讨论】:

  • 同样,这不会抛出 Can't use function return value in write context(在 5.3 上,它会抛出语法错误)...
  • 没有php代码只有html
  • @bm2001:如果只有 HTML 代码,是什么给你带来了这个错误???你为什么要标记这个问题 PHP?
  • 只要if (!getMyVar())。根本不需要empty
猜你喜欢
  • 2016-09-15
  • 2012-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-03
  • 1970-01-01
相关资源
最近更新 更多