我有2个代码块。
//第一块
<div id="a1">
<?php
if (is_array($new_array) || is_object($new_array))
{
foreach ($new_array as $name => $val)
{
echo $name . " : " . $val[0] . " , " . $val[1]. " , " . $val[2];
}
}
unset($new_array);
?>
</div>
第二块
<div id="a2">
<?php
if (is_array($new_array) || is_object($new_array))
{
foreach ($new_array as $name => $val)
{
echo $name . " : " . $val[0] . " , " . $val[1]. " , " . $val[2];
}
}
unset($new_array);
?>
</div>
第一块或第二块将在一天之内给出空结果。意思是如果今天,第一个块将给出空结果,明天第二个块将给出空结果....或者...。
问题:
今天,第二个块的Value为空,它发出了通知:未定义变量:new_array error,所以我在第二个代码块之前对此进行了初始化:
$new_array='';
它工作正常。...但是明天第二块代码将给出以下结果:
警告:字符串偏移量非法,致命错误:未捕获的错误:无法将字符串偏移量用作数组
所以我需要删除此代码:$new_array='';
在第二块之前&我需要在第一块之前.....
怎样使用if (isset($new_array)) {...}
或像数组那样初始化它,$new_array = [];
您可以将isset添加到其他检查中,如下所示:
if (isset($new_array) && (is_array($new_array) || is_object($new_array))) { .... }
有关isset()的更多信息
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句