首頁 >php教程 >php手册 >前端学PHP之常量,学PHP之常量

前端学PHP之常量,学PHP之常量

WBOY
WBOY原創
2016-06-13 08:48:30950瀏覽

前端学PHP之常量,学PHP之常量

目录
[1]常量定义 [2]自定义常量 [3]系统常量 [4]常量取值 [5]defined()

常量定义

  常量类似变量,但常量一旦被定义就无法更改或撤销定义。常量最主要的作用是可以避免重复定义,篡改变量值,提高代码可维护性。有效的常量名以字符或下划线开头(常量名称前面没有$符号)。通常,常量全用大写。PHP中的常量分为自定义常量和系统常量

  [注意]与变量不同,常量贯穿整个脚本是自动全局的

 

自定义常量

  自定义常量使用define()函数,它使用三个参数

  [1]首个参数定义常量的名称

  [2]第二个参数定义常量的值

  [3]可选的第三个参数规定常量名是否对大小写敏感,默认是false

  define()函数的语法格式为:

bool <span>define</span>(<span>string</span> <span>$constant_name</span>, <span>mixed</span> <span>$value</span>[, <span>$case_sensitive</span> = <span>true</span>])
<?<span>php
</span><span>$p</span> = 'PI0'<span>;
</span><span>define</span>('PI',3.14<span>);
</span><span>define</span>('PI',3.15);<span>//</span><span>无效,因为常量无法被修改定义</span>
<span>define</span>(<span>$p</span>,3.14<span>);
</span><span>echo</span> <span>PI</span>;<span>//</span><span>3.14</span>
<span>echo</span> "<br>"<span>;
</span><span>echo</span> PI0;<span>//</span><span>3.14</span>
?>

 

系统常量

  系统常量是PHP已经定义好的常量,常见的系统常量有:

  [1]__FILE__:php程序文件名。获取当前文件在服务器的物理位置

  [2]__LINE__:PHP程序文件行数。表示当前代码在第几行

  [3]PHP_VERSION:当前解析器的版本号。可以提前知道PHP代码是否可被该PHP解析器解析

  [4]PHP_OS:执行当前PHP版本的操作系统名称。告诉服务器所用的操作系统名称,根据该操作系统优化代码

<?<span>php
</span><span>echo</span> <span>__FILE__</span>;<span>//</span><span>D:\wamp\www\1.php</span>
<span>echo</span> "<br />"<span>;
</span><span>echo</span> <span>__LINE__</span>;<span>//</span><span>11</span>
<span>echo</span> "<br />"<span>;
</span><span>echo</span> <span>PHP_VERSION</span>;<span>//</span><span>5.5.12</span>
<span>echo</span> "<br />"<span>;
</span><span>echo</span> <span>PHP_OS</span>;<span>//</span><span>WINNT</span>
<span>echo</span> "<br />"<span>;
</span>?>

 

常量取值

  获取常量值有两种方法:一种是使用常量名直接获取值;另一种是使用constant()函数

  constant()函数语法格式为:mixed constant(string constant_name)

<?<span>php
</span><span>$p</span><span>;
</span><span>define</span>("PI1",3.14<span>);
</span><span>define</span>("PI2",3.142<span>);
</span><span>$height</span> = "中"<span>;
</span><span>if</span>(<span>$height</span> == "中"<span>){
    </span><span>$p</span> = "PI1"<span>;
}</span><span>else</span><span>{
    </span><span>$p</span> = "PI2"<span>;
}
</span><span>$r</span> = 1<span>;
</span><span>$area</span> = <span>constant</span>("PI") * <span>$r</span> * <span>$r</span><span>;
</span><span>echo</span> <span>$area</span><span>;
</span>?>

 

defined()函数

  如果常量被重复定义后,PHP解析器会发出"Constant XXX already defined"的警告,提醒该常量已被定义过

  defined()函数用来判断一个常量是否已经定义,其语法格式为:

bool <span>defined</span>(<span>string</span> constants_name)

  若存在则返回true,否则返回false

<?<span>php 
</span><span>define</span>("PI1",3.14<span>);
</span><span>$p</span> = "PI1"<span>;
</span><span>$is1</span> = <span>defined</span>(<span>$p</span><span>);
</span><span>$is2</span> = <span>defined</span>("PI2"<span>);
</span><span>var_dump</span>(<span>$is1</span>);<span>//</span><span>bool(true)</span>
<span>var_dump</span>(<span>$is2</span>);<span>//</span><span>bool(false)</span>
?>

 

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn