定义php常量的详解

yipeiwu_com5年前PHP代码库

常量可以理解为值不变的变量。常量值被定义后,在脚本的其他任何地方都不能被改变。一个常量由英文字母、下划线、和数字组成,但  数字不能作为首字母出现。
在php中使用defaine()函数来定义常量,该函数的语法格式为:
define(string constant_name, mixed value, case_sensitive = true)

该函数有3个参数:
constant_name:必选参数,常量名称,即标志符
value:必选参数,常量的值
case_sensitive:可选参数,指定是否大小写敏感,设定为true表示不敏感

获取常量值有两种方法:
1.使用常量名直接获取值;
2.使用constant()函数。

constant()函数和直接使用常量名输出的效果是一样的,但函数可以动态的输出不同的常量,在使用上要灵活、方便。

语法格式为:

mixed constant(string constant_name)

参数constant_name为要获取常量的名称,也可为存储常量名的变量。

如果成功则返回常量的值,失败则提示错误信息常量没有被定义。

要判断一个常量是否已经定义使用defined()函数。函数的语法格式为:

bool defained(string constants_name)

constant_name为要获取常量的名称,存在则返回true,否则返回false;

php中可以使用预定义常量获取php中的信息。如"_FILE_"、"_LINE_"、"PHP_OS"等等。

例:

复制代码 代码如下:

<?php
  define ("MESSAGE", "PHP常量定义,常量名区别大小写");
  echo MESSAGE."<br/>";    //输出常量MESSAGE
  echo Message."<br/>";    //输出"Message",表示没有该常量

  define("MESSAGE2", "PHP常量定义,常量名不区别大小写", true);
  echo MESSAGE2."<br/>";   //输出常量MESSAGE2
  echo Message2."<br/>";   //输出常量

  $constant_name = "message2";
  echo constant($constant_name)."<br/>";   //输出常量MESSAGE2
  echo defined("MESSAGE")."<br/>";         //如果定义返回true,echo输出显示1
 ?>

相关文章

WordPress的文章自动添加关键词及关键词的SEO优化

网站的关键字及网页描述关系网站对搜索引擎的友好程度,如果自己手动加显然太折腾了,那如何让wordpress博客自动为每篇文章自动关键字及网页描述。每篇文章的内容不同,我们该如何让word...

关于URL最大长度限制的相关资料查证

在开发调试支付宝接口时,突然发现支付宝接口的URL很长,远远大于之前自己印象中的255个字符。赶紧搜索查证了一番,理解如下: URL不能大于255bytes的说法确实存在,在RFC261...

遭遇php的in_array低性能问题

遭遇php的in_array低性能问题

PHP的性能一直在提高。然而,若是用的不恰当,或是一个不留神,还是可能会踩到PHP内部实现方面的坑的。我在前几天的一个性能问题上就碰到了。 事情是这样子的,一位同事反馈我们的一个接口每次...

PHP strtok()函数的优点分析

其优点是: 1、可以一次定义多个分隔符。函数在执行时,是按单个分隔符来切割,而不是按整个分隔符,而explode则是按整个分隔串来切割的。正因此,explode可以用中文切割,而str...

php 来访国内外IP判断代码并实现页面跳转

我大概构思了一下,有两个方案: 1. Javascript判断来访者的浏览器语言,如果是中文系统,自然使用者都是中国人,跳中文网站; 如果是非中文系统,默认使用者非中国人,跳英文网站。...