好!欢迎访问迷津渡口 现在时间是:

迷津渡口

越感到迷惑 越接近真理

php常量const和define的区别

一般来说,const用于声明类常量,define用于声明普通常量。

<?php
    //在类外面通常使用define定义常量,define是
    define('QINGZZCONSTANT','http://www.qingzz.cn');
    class QingzzClass {
        //在类中定义常量只能用const,定义常量不需要$
        const QzzConstant='http://www.qingzz.cn';
        
        function showConstant() {
            //在类中使用类常量使用self::常量名
            print self::QzzConstant."<br>";
        }
    }
    //在类外面使用类常量使用类名::常量名
    print QingzzClass::QzzConstant."<br>";
    //利用类方法输出常量
    $exam=new QingzzClass;
    $exam->showConstant();
    //普通常量的使用
    print QINGZZCONSTANT."<br>";
?>

在php5.3之后,const可以用于定义普通常量,类常量的使用增加了几种方法:

<?php
    //const定义普通常量
    const QINGZZCONSTANT='http://www.qingzz.cn';
    class QingzzClass {
        //类常量仍仅可使用const定义
        const QzzConstant='http://www.qingzz.cn';
        
        function showConstant() {
            print self::QzzConstant."<br>";
        }
    }
    //在类外面使用类常量的其他方法:
    $classname = "QingzzClass";
    print $classname::QzzConstant . "<br>"; // PHP 5.3.0之后

    $exam = new QingzzClass();
    print $exam::QingzzConstant."<br>"; // PHP 5.3.0之后
    //普通常量的使用
    print QINGZZCONSTANT."<br>";
?>

const和define的区别

  1. const不能在条件语句里面定义常量,define可以

  2. const的名称也只能是常量,define的名称可以由表达式获得

  3. const的值只能是静态常量,define的值可以是任意表达式

  4. const只是一个语言结构,define是一个函数,因此const的速度比define快


点赞1
   支持一下
挤眼 亲亲 咆哮 开心 想想 可怜 糗大了 委屈 哈哈 小声点 右哼哼 左哼哼 疑问 坏笑 赚钱啦 悲伤 耍酷 勾引 厉害 握手 耶 嘻嘻 害羞 鼓掌 馋嘴 抓狂 抱抱 围观 威武 给力
 点赞
 签到
 表情
 图片
 代码
提交评论

清空信息
关闭评论
 00:00/00:00
我想和你虚度时光 - 花房姑娘(9)
  1. 恋恋风尘
  2. 恋恋风尘
  3. 恋恋风尘
  4. 恋恋风尘
  5. 恋恋风尘
  6. 恋恋风尘
  7. 恋恋风尘
  8. 恋恋风尘
  9. 恋恋风尘