繁体   English   中英

Prestashop模块奇怪的问题

[英]Prestashop module weird issue

我正在prestashop开发一个自定义模块。 因为我在这样的函数中取得了价值

$fname = !empty(Tools::getValue('fname')) ? Tools::getValue('fname') : '';

但它显示这样的错误

Fatal error: Can't use function return value in write context

那么有人可以告诉我为什么错误在这里? 如何解决这个问题?

我得到了答案。 它应该是这样的

Tools::getValue('fname') ? Tools::getValue('fname') : ' ';

我只是在这里为谷歌搜索结果的人解释。

  1. empty(someFunction())创建错误,因为

注意:在PHP 5.5之前,empty()仅支持变量; 其他任何东西都会导致解析错误。 换句话说,以下将不起作用:empty(trim($ name))。 相反,使用trim($ name)== false。

http://php.net/manual/en/function.empty.php

  1. 在Prestashop方法中, Tools::getValue()有可能使用默认值,

    public static function getValue($ key,$ default_value = false){

所以你可以使用Tools::getValue('fname', ''); 在这种情况下,返回值将包含'fname'或空字符串的值或值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM