3. 常量

作者: 57fc17b7d598 | 来源:发表于2017-06-22 12:06 被阅读11次

基本介绍

常量是一个不能改变值且没有 $ 美元符号的变量,通常我们会将常量的命名用大写表示(严格区分大小写),但它在作用域上和普通变量有所不同,它属于 超全局变量,一旦定义了,在任何地方都能使用。

常量的值应该是标量数据类型(BooleanIntegerFloatString),尽量避免不要使用其他类型的值。
常量一旦定义,不能对其进行赋值,且不能重新定义或是取消定义。
常量可以在任意地方定义和访问。
使用const的方式定义常量,不能在if、循环、函数中定义。

// 普通常量
define('MIN_SIZE', 10);
define('MAX_SIZE', 100);
echo MIN_SIZE. ' : ' . MAX_SIZE . '<br />';

// 第二种方式
const MIN_LENGTH = 100;
const MAX_LENGTH = 1000;
echo MIN_LENGTH. ' : ' . MAX_LENGTH . '<br />';

// 动态名常量定义
$name = 'TEMP';
define($name, 'hello world');
// 动态名常量获取
echo constant($name) . ' : ' . TEMP . '<br />';

// 检查常量是否已经定义
echo defined($name) . '<br />';  // true
// 普通常量
define('MIN_SIZE', 10);
define('MAX_SIZE', 100);
// 定义类
class Example{
    // 类的常量
    const MIN_SIZE = 20;
    const MAX_SIZE = 200;
    // 测试方法
    static function func(){
        // 20 : 100
        echo self::MIN_SIZE . " : " . MAX_SIZE;
    }
}
// 调用测试
Example::func();

预定义常量

PHP给网站内置了很多的预定义常量,这些常量要么来自PHP内核,要么来之各种扩展。
通过get_defined_constants()函数可以获取当前已经定义的所有常量。

预定义常量http://php.net/manual/zh/reserved.constants.php

有几个经常使用但却又不太一样的常量,它们称之为 魔法常量,从本质上来说,它们并不是常量,因为它们的值会改变。

名称 说明
__LINE__ 获取当前所在文件中的行号
__FILE__ 获取当前文件的完整路径
__DIR__ 获取当前文件所在的目录
__FUNCTION__ 获取当前函数的名称,如functionName
__CLASS__ 获取当前类名
__TRAIT__ 获取当前Trait的名称
__METHOD__ 获取类的方法名称,如Class::functionName
__NAMESPACE__ 获取当前命名空间的名称

相关文章

  • 3.常量

  • 3.常量

    创建一个文件 touch src/const.js const.js中内容 ``` // ES5 中常量的写法 O...

  • 3. 常量

    基本介绍 常量是一个不能改变值且没有 $ 美元符号的变量,通常我们会将常量的命名用大写表示(严格区分大小写),但它...

  • 3.常量

    #include using namespace std; //常量的定义方式 //1.#define 宏常量 /...

  • 2021-01-25 常量

    常量表示不能改变的数值 Java中常量的分类: 1.整数常量:所有整数2.小数常量:所有小数3.布尔型常量:tru...

  • iOS之C语言如何快速了解常量

    本章基本概括1.什么是常量?2.常量分类3.整型常量4.实型常量5.字符串量6.字符串常量7.自定义常量 一,什么...

  • SpringBoot集成Rabbitmq

    1.加入依赖 2.定义常量 定义交换器常量 定义消息队列常量 定义路由键常量 3.配置消息队列、交换器和绑定 4....

  • C/C++ const基本用法

    作用: 1.修饰变量,说明变量内容不可以被改变; 2.修饰指针,分为指向常量的指针,指针常量; 3.常量引用,经常...

  • C语言中的数据类型

    数据类型 1.编码规范 2.关键字 3. 标识符 4.数据类型 5. 常量 5.1 整型常量 5.2 实型常量 5...

  • IOS字典转模型

    1.定义字典和方法 2.实现转模型方法 3.声明常量 4.懒加载plist文件赋值给常量

网友评论

      本文标题:3. 常量

      本文链接:https://www.haomeiwen.com/subject/xletcxtx.html