首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHP错误:警告:非法字符串偏移量'rating‘

PHP错误:警告:非法字符串偏移量'rating‘
EN

Stack Overflow用户
提问于 2018-12-19 05:25:46
回答 1查看 453关注 0票数 1

我刚刚在我的wordpress网站上安装了一个用于客户评论的stamped.io插件,在我的前端,我在第29行的/plugins/stampedio-product-reviews/view/cls_stamped_io_public.php中收到了一个错误‘警告:非法字符串偏移’评级‘。’

我深入研究了这个文件,这是第29行的代码(实际上是包含if语句的那一行):

代码语言:javascript
复制
if ($agrr_review["rating"] != "0" && $agrr_review["rating"] != 0){

$markup['aggregateRating'] = array('@type' => 'AggregateRating',

'ratingValue' => $agrr_review["rating"],

'ratingCount' => $agrr_review["count"],

'reviewCount' => $agrr_review["count"],

'worstRating' => 1,

'bestRating' => 5,

);

这只是一个警告错误,所以我只想让它闭嘴。有什么帮助吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-19 06:20:09

由于"0" == 0为true,因此条件$agrr_review["rating"] != "0" && $agrr_review["rating"] != 0是多余的。同样正确的是:"" == 0,但不是"" == "0"

但是,由于在这种情况下,使用空字符串进行计算是没有意义的,因此可以将条件简化为:

代码语言:javascript
复制
if (!empty($agrr_review['rating']))

对于任何计算结果为false的表达式,empty均为true,包括空字符串""、值0、字符串"0"和未设置变量。它不会抛出警告。

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

https://stackoverflow.com/questions/53841316

复制
相关文章

相似问题

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