首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >突然在PHP中获得“致命错误:不支持的操作数类型”

突然在PHP中获得“致命错误:不支持的操作数类型”
EN

Stack Overflow用户
提问于 2018-07-16 06:21:07
回答 1查看 0关注 0票数 0

我正在试图找出是什么导致了PHP行为的突然变化。我在内部PHP应用程序上有如下代码:

代码语言:txt
复制
if(($bar + 200) >= ($row->barValue)){ 
   echo 'yay';
}

$row是SQL查询的一行,这段代码已经运行了4个月以上,没有问题。突然,今天晚上,它开始吐出一个错误,大意是Fatal error: Unsupported operand types...

将变量包装在Floatval()或intval()中解决了问题。虽然我理解这些值在理想情况下需要设置为INT/Floats,但我不明白为什么会突然停止工作。这将是一个很大很长的重构工作。

我正在运行PHP7.0.x,据我所知,php和nginx最近都没有改变。

知道为什么这段代码现在才开始出错吗?是否有特定的nginx/mysql/php配置设置可能会对此产生影响?

EN

回答 1

Stack Overflow用户

发布于 2018-07-16 16:00:10

从我的测试来看,从4.3.11开始,PHP就一直是这样的。

不管怎样,$bar不是你期望的那样,你不能使用+在上面。

以下是这个问题的简单再现:

代码语言:txt
复制
<?php
$bar = array();

echo $bar + 200;

有些代码库或数据存储区(如JSON或数据库)中的一些更改提供了无效的$bar

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100005580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档