如何解决phpstan 不通过 strip_tags
我有一个 html 字符串,我想用 <br>
将其分解,但有时它可能在其他标签内。
if (in_array($param,$customOrdering,true) && $value) {
$ordering = array_search($param,true);
$segments[$ordering] = [];
if (in_array($param,$explodeParams,true)) {
$values = explode('<br>',$value);
foreach ($values as $v) {
$testing_value = $v;
if (!empty(trim(strip_tags($testing_value)))) {
array_push($segments[$ordering],$this->createSegmentFromParam($param,$v));
138 } elseif (!empty(trim($v)) && $segments[$ordering]) {
139 end($segments[$ordering])->value_raw .= strip_tags($v,$this->allowedTags);
}
}
} else {
array_push($segments[$ordering],$value));
}
}
createSegmentFormParam 的声明
@return ArrayHash
private function createSegmentFromParam($param,$value)
138 Right side of && is always false.
139 Cannot access property $value_raw on false.
任何想法如何传递?代码运行良好
解决方法
对于类似行为或 PHP Stan 仍有未解决的问题 - False negative with array_push on property
尽量不使用 array_push
并在第 138
行将其替换为以下内容:
$segments[$ordering][] = $this->createSegmentFromParam($param,$v);
除此之外,您的代码开头的 array_search
可能会返回 FALSE
,您确实想在进一步深入代码之前检查一下...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。