zoukankan      html  css  js  c++  java
  • isset()和$arr['image']中image未定义的迷惑

    一、解说isset().

    if (isset($upload['error']) && $upload['error'] > 0){
            return false;
     }

      一日看别人写的代码,很纳闷:既然有$upload['error'] > 0这个判断,那为何还要做isset($upload['error'])这个判断呢?

      经询问,一个朋友的解说一语点睛:PHP是弱语言,数组下标不存在不会影响程序正常运行,但是默认会提示一个消息。

      我明白了:

        以前总是看到isset()函数的定义,说判断该变量是否设置什么的,怎么看怎么都很迷惑。现在才知道,这里可以判断$upload['error']中的"error"是否定义。在上述代码中,如果不做isset()判断,则会出现NOTICE,说为定义error。

    二、$arr['image']中image未定义。

    var_dump($arr['image']);

      直接这样写,会有NOTICE:images undefine提示,但是如果isset($arr['image'])先判断,然后使用,则没NOTICE了。

  • 相关阅读:
    spring给容器中注入组件的几种方式
    Linux多进程
    Linux多进程的应用
    Linux进程通信
    Linux信号
    Linux共享内存
    Linux信号量
    Linux多线程
    Linux线程同步
    Linux调用可执行程序
  • 原文地址:https://www.cnblogs.com/thinksasa/p/2955688.html
Copyright © 2011-2022 走看看