+ -
当前位置:首页 → 问答吧 → php常量详解--阿涛随笔

php常量详解--阿涛随笔

时间:2008-07-25

来源:互联网

php常量详解--阿涛随笔
php常量并不是常用,但一些常用的数据可以设成常量如圆周率
1:定义:
常量是一个简单值的标识符(名字)。如同其名称所暗示的,在脚本执行期间该值不能改变。

除了一些大家公认的数据外,不建议使用常量。

2:书写格式:
常量名和其它任何 PHP 标签遵循同样的命名规则。合法的常量名以字母或下划线开始,后面跟着任何字母,数字或下划线,常量默认为大小写敏感。按照惯例常量标识符总是大写的。但常量不需要加$。

3:使用范围:
常量的范围是全局的。不用管作用域就可以在脚本的任何地方访问常量。

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

常量只能包含标量数据(boolean,integer,float 和 string)。

可以简单的通过指定其名字来取得常量的值,不要在常量前面加上 $ 符号。如果常量名是动态的,也可以用函数 constant() 来读取常量的值。用 get_defined_constants() 可以获得所有已定义的常量列表。

注: 常量和(全局)变量在不同的名字空间中。这意味着例如 TRUE 和 $TRUE 是不同的。

如果使用了一个未定义的常量,PHP 假定你想要的是该常量本身的名字,如同你用字符串调用它一样(CONSTANT 对应 "CONSTANT")。此时将发出一个 E_NOTICE 级的错误。参见手册中为什么 $foo[bar] 是错误的(除非你事先用 define() 将 bar 定义为一个常量)。如果你只想检查是否定义了某常量,用 defined() 函数。

5:常量和变量不同:

常量前面没有美元符号($);

常量只能用 define() 函数定义,而不能通过赋值语句;

常量可以不用理会变量范围的规则而在任何地方定义和访问;

常量一旦定义就不能被重新定义或者取消定义;

常量的值只能是标量。

6:定义常量的例子:

<html>
  <head>
  <title>php常量定义--阿涛随笔</title>
  </head>
  <body>

<?php
define("CONSTANT", "Hello world.");  //difine()函数定义常量
echo CONSTANT."<br>"; //输出定义的常量
echo Constant; //如果是没有定义的常量将按输出常量的名字
?>

  </body>

</html>
7:预定义常量:

PHP 在常数中定义了以下一些常数。

__FILE__ 当前正在处理的脚本文件名。
若使用在一个被包含的文件中(include 或 require),
那么它的值就是被包含的文件,
而不是包含它的那个文件。

__LINE__ 当前正在处理的脚本文件的当前行数,同前。

PHP_VERSION 这个是当前 PHP 的版本,如 '3.0.8-dev'。

PHP_OS PHP所在的操作系统的名字,如 'Linux'。

TRUE 表示真值 (true)。

FALSE 表示伪值 (false)。

E_ERROR 这个常量指到最近的错误处。

E_WARNING 这个量数指到最近的警告处。

E_PARSE 本常量为剖析语法有潜在问题处。

E_NOTICE 这个常式为发生不寻常但不一定是错误处。例如存取一个不存在的变量。

这些 E_ 开头形式的常量,可以参考 error_reporting() 函式,有更多的相关说明。

常量就说到这里。

作者: 阿涛   发布时间: 2008-07-25

写的很好。

作者: qianxunww   发布时间: 2008-12-31

感谢分享

作者: wds2008   发布时间: 2009-12-09

支持一下!

作者: yujianrong   发布时间: 2010-01-19

好,不错

作者: wangdafu   发布时间: 2010-02-24

我就喜欢基础知识受教了

作者: 枫翼之殇   发布时间: 2010-02-24

收藏了

作者: zhaocheneden   发布时间: 2010-03-01

是啊。。很好。。

作者: www.qyie.cn   发布时间: 2010-05-19

阿涛很能干,谢谢了,向你学习

作者: aixiaqull   发布时间: 2010-06-03

不错,收藏了

作者: xnotepad   发布时间: 2010-06-06

很好,收藏。。。

作者: a28794708   发布时间: 2010-09-03