我有来自旧PHP的代码。但当我尝试用PHP 8执行它时。
第一个代码是:
粘贴在中
我有错误:
致命错误:使用大括号的数组和字符串偏移量访问语法在第550行的***中不再支持
在线:
for ($i = 0; $i < strlen($text); $i++) $res .= ord($text{$i}) . "-";
我把它改成:
for ($i = 0; $i < strlen($text); $i++) $res .= ord($text[$i]) . "-";
但我有另一个错误:
警告:试图访问中bool类型值的数组偏移量***在线76
在线:
$real = $row['sip'];
我不知道如何重写这个字符串
你能帮我吗?
问题是,您试图像访问数组一样访问布尔值。
我假设$row是一个查询的结果,而该查询不返回任何匹配的行,所以它是false。
在访问$row之前,只需检查它是否为false。
<?php
$row = false;
echo $row['test'];
这将返回该警告。
根据你的评论,这取决于你想做什么。
如果存在,返回值,如果不存在?
if($row){
// if it contains something, do something with it
}else{
// do something else if it doesn't
}
我不知道你的代码流是什么,所以我真的帮不了你,这只是检查$row变量是否不是假的