常量的介绍

常量:一旦声明,这个常量的值就不会被改变

  1. 常量是使用函数 define() 声明的
  2. 如果常量没有声明,则在使用时,会自动转为字符串(效率很低)
  3. 常量名称,不要加$符号
  4. 常量名称,默认区分大小写,习惯上常量名称要全部大写
  5. 可以使用 define() 第三个参数来决定是否让这个常量名称区分大小写true false
  6. 常量的值只支持标量数据类型(boolean,integer,float,string)
  7. 常量不能使用 unset() 清除一个常量
  8. 可以使用defined()判断一个常量是否存在
  9. 常量的范围是全局的。不用管作用域就可以在脚本的任何地方访问常量

常量的定义和使用

使用 define() 函数来定义常量,一个常量一旦被定义,就不能再改变或者取消定义

  1. 语法:bool define(string name,mixed value [,bool case_insensitive])
  2. name表示常量名,
  3. value表示常量值或表达式,但常量只能包含标量数据(booleanintegerfloatstring),
  4. case_insensitive为可选参数设置为true时则表示常量名不区分大小写
  5. <?php
  6. define("CON_INT",100);
  7. echo CON_INT; //输出:100
  8. define("GREETING","Hello you",true);
  9. echo GREETING; //输出:Hello you
  10. echo constant ("Greeting"); //输出:Hello you
  11. ?>

常量与变量的区别

  • 常量前面没有美元符号($)
  • 常量只能用 define() 函数定义,而不能通过赋值语句;
  • 常量可以不用理会变量作用范围的规则而在任何地方定义和访问;
  • 常量一旦定义就不能被重新定义或者取消定义;
  • 常量的值只能是标量
  • 可以用函数 constant() 来读取常量的值
  • 用get_defined_constants() 可以获得所有已定义的常量列表

系统预定义常量

  • PHP_OS:执行PHP解析的操作系统名称
  • PHP_VERSION:当前PHP服务器的版本
  • LINE:文件中的当前行号
  • FILE:文件的完整路径和文件名
  • FUNCTION:函数名称(PHP4.3.0新加)。自PHP5起本常量返回该函数被定义时的名字(区分大小写).在PHP4中该值总是小写字母的。
  • CLASS:类的名称(PHP4.3.0新加)。自PHP5起本常量返回该函数被定义时的名字(区分大小写).在PHP4中该值总是小写字母的。
  • METHOD:类的方法(PHP5.0.0新加).返回该方法被定义时的名字(区分大小写)