【发布时间】:2012-04-15 14:18:24
【问题描述】:
我有以下 php 代码,它从 mysql 数据库中获取序列化数组,然后将其反序列化。这工作正常。以下代码:
$row=mysql_fetch_array($result);
$mydata=$row[0];
$unser=unserialize($mydata);
echo "$mydata<br>";
print_r($unser);
echo "<br>";
echo $unser[1901];
输出是这样的:
a:2:{i:2070;s:4:"0.00";i:1901;s:4:"1.00";}
Array ( [2070] => 0.00 [1901] => 1.00 )
1.00
到目前为止,一切都很好。现在,我正在尝试编写代码,以便它检查数组键 1901 是否存在。为此,我尝试了这个:
$search_array = $unser;
if (array_key_exists('1901', $search_array)) {
echo "The key 1901 is in the array";
}
但是,这会返回错误。我做错了什么?
【问题讨论】:
-
“一个错误”,并没有告诉我们太多。请引用错误!
-
当然,抱歉!错误是:解析错误:语法错误,意外的 T_VARIABLE
-
该错误发生在哪一行?
-
在
array_key_exists之后还是之前? -
您所有的分号都在正确的位置吗?即错误行之前的行上没有缺少分号?