我将我的网站连接到PayPal using this excellent guide。
我之前没有遇到任何问题,但是我收到了以下错误:
PHP Fatal error: Can't use function return value in write context
它似乎是由这行代码引起的:
if(!empty(_SESSION('ppl_products'))&&!empty(_SESSION('ppl_charges'))){
这个错误是什么意思?当我在单独托管上连接paypal API时,我没有得到它。这是服务器问题吗?
答案 0 :(得分:2)
empty()
是一种语言结构。它使用变量名称。因此,你不能写信给它。函数的返回写出变量。
你最好的办法是省略empty
并检查回报的真实性:
if(_SESSION('ppl_products') && _SESSION('ppl_charges')){
然后,如果_SESSION
不是函数,并且您正在尝试访问全局会话变量,那么您正在做一些错误,并且您必须这样做:
if(!empty($_SESSION['ppl_products'])&&!empty($_SESSION['ppl_charges'])){
答案 1 :(得分:0)
这个错误对我来说很熟悉,因为在使用带有isset
的函数返回值时我遇到了同样的问题(如:isset(myFunction())
)。因为,kunststube.net points out,empty
或isset
无法做到这一点。
虽然我没有在这里看到一个明显的函数调用(也许有一个在舞台上发生?),你可以尝试用!empty($something)
代替$something == true
,这是等价的,但可能会给你更多提示至于错误在哪里。