首页WEB开发PHP教程 → php基础知识:常量

php基础知识:常量

日期:2007-6-4 15:21:40 出处:其他转载 作者:不详 人气:

一.常量名的限制:
合格的常量名:以字母或下划线开始,后面跟着任何字母,数字或下划线。
正则表达式:[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
在这里,字母是 a-z,A-Z,以及从 127 到 255(0x7f-0xff)的 ASCII 字符。
// 合法的常量名
define("FOO",     "something");
define("FOO2",    "something else");
define("FOO_BAR", "something more");

// 非法的常量名
define("2FOO",    "something");

// 合法,但是应该避免
// 也许有一天,php会定义一个魔术常量,这样你的代码就废掉了
define("__FOO__", "something");

2>常量的范围是全局的。

3>常量定义的语法:define()
函数说明:
bool define ( string name, mixed value [, bool case_insensitive] ):Defines a named constant Defines a named constant at runtime. See the section on constants for more details. The name of the constant is given by name; the value is given by value. The optional third parameter case_insensitive is also available. If the value TRUE is given, then the constant will be defined case-insensitive. The default behaviour is case-sensitive; i.e. CONSTANT and Constant represent different values.
翻译:
……第三个参数case_insensitive是可用的。默认为false。如果给ture,则大小写不敏感。否则敏感。
一个常量一旦被定义,就不能再改变或者取消定义。
常量只能包含标量数据(boolean,integer,float 和 string)。 不要定义 resource 常量。

4>常量和变量的不同:
   *>常量前面没有美元符号($);
   *>常量只能用 define() 函数定义,而不能通过赋值语句;
   *>常量可以不用理会变量范围的规则而在任何地方定义和访问;
   *>常量一旦定义就不能被重新定义或者取消定义;
   *>常量的值只能是标量。

 


--------------------------------------------------------------------------------

5>魔术常量:并不是真正的常量,随着使用的位置不同而改变。但是用法和常量相似。
       __LINE__ :文件中的当前行号。 
       __FILE__ :文件的完整路径和文件名。如果用在包含文件中,则返回包含文件名。自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径,而在此之前的版本有时会包含一个相对路径。 
       __FUNCTION__ :函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
       __CLASS__ :类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。 
       __METHOD__ :类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。

关于本站 | 帮 助 | 广告服务 | 版权声明 | 业务合作 | 捐助本站 | 软件发布 | 联系我们
77资源下载 www.77zy.com ©2007-2008 版权所有
备案编号:赣ICP备07002641号  QQ:674648476