加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 未定义的变量当值为空时

发布时间:2020-12-13 21:59:19 所属栏目:PHP教程 来源:网络整理
导读:我有2块代码…. //第一块 div id="a1"?phpif (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" ?
我有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[2];
       }
    }
    unset($new_array);
    ?>
    </div>

第1或第2块将在一天内给出空结果.意味着如果今天,第一个区块将给出空的结果&明天第二座会给出空洞的结果……或者….

问题 :

今天,第二个块的值为空,它给出了注意:未定义的变量:new_array错误,所以我在第二个代码块之前初始化了这个:

$new_array='';

它运行良好….但明天第二块代码将给出这个结果:

警告:非法字符串偏移,
致命错误:未捕获错误:无法将字符串偏移用作数组

所以我需要删除此代码:$new_array =”;在第二街区之前我需要在第一块之前放置…..

解决方法

如果使用if(isset($new_array)){…}或者像数组一样初始化它,$new_array = [];

您可以将isset添加到其他检查,如下所示:

if (isset($new_array) && (is_array($new_array) || is_object($new_array))) { .... }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读