• php 常量


    常量(配置)

    含义:用于存储一个不会变化也不希望变化的数据的标示符。

    常量命名规则,同变量,但习惯说,常常将常量的名称使用“全大写”形式。

    定义形式

    使用define()函数定义

    使用形式:define(“常量名”, 常量值)

    推荐常用名使用全大写形式

    define("COMST1",1);
    define("_C2","ABC");//不推荐使用“——”开头的名字
    define("pi",3.14);

    使用const语法定义

    使用形式: const  常量名 = 常量值

    const语法只能在“最顶层”的代码域中使用(不能在大括号中)

    也即,const语法不能在函数中或条件语句中或其他表示一个“范围”的语句中使用

    const C1 11;//这里是顶层代码,可以使用const
    
    if(C1 > 10){  //使用常量,进行判断
           const C2 = 12;  //这一行是语法错误(非顶层代码)
    }

    使用常量

    两种形式:1、直接使用名字

    //使用常量
    echo CONST1;
    $STR2 = "<h3>" . _C2 . "</h3>";
    $mianji = pi * 5 * 5; //求半径为5的圆面积

         2、使用constant()函数constant(“常量名”)

    const C1 =11;//这里是顶层代码,可以使用const
    echo "常量为C1的值为:" .  constant("C1");
    $s1 = "C1";
    echo "常量为C1的值为:" . constant("$s1");//$s1的数据就是这一个字符串 
    //并且其代表一个常量的名字 echo "常量为C1的值为: C1";//常量在双引号字符串中并不能识别

    常量变量的区别

    定义形式不同:

    使用形式不同:常量无需$符号

    可变程度不同:常量的值不可以改变,常量也不可以销毁

    作用范围不同:常量具有超全局作用域 (函数内外都可以直接使用)

    可用类型不同:常量只能存储标量类型int,float,string,bool

    判断常量是否存在:defined()

    判断的结果为布尔值。

    常用形式:if ( defined (某常量名) == false ){ .....这里可以去定义该常量;}

    实际上,可以这样:

    $result = defined (某常量名);

    //结果是truefalse

    使用一个未定义的常量(特殊情况):

     

    使用一个未定义的常量会报一个错误(notice错误)——跟使用一个未定义的变量一样——当然不推荐。

     

    但是:

     

    php,此时会得到一个意想不到的结果:似乎该常量存在,并该常量的值就是该名字。

     

     

    echo NOTCONST;//未定义的常量名NOTCONST

     

    预定义常量:

    php语言中,预定了大量的常量,可以直接使用。

    其中有些常量,是需要某些模块打开之后才有(比如mysql模块)

    比如M_PI(圆周率), PHP_OS(操作系统), PHP_VERSIONphp版本号),PHP_INT_MAX(php中的最大的整数值)

    参考手册〉附录〉保留字列表〉预定义常量

     

    魔术常量

    魔术常量其实是一种值会随着一定的条件(环境)而变化的常量,形式和使用上是常量,但实际上,其值会改变。

    比如:__DIR__(当前网页文件的所在目录)__FILE__(当前网页文件__LINE__(当这一行

    魔术常量其实类似变量,其值随着不同代码而变化,不区分大小写

      参考手册〉语言参考〉常量〉魔术常量

    echo "当前网页文件所在目录为:" . __DIR__;
    echo "当前网页文件为:" . __FILE__;
    echo "当前为第:" . __LINE__ . "行"
    echo "当前为第:" . __LINE__ . "行"
    echo "当前为第:" . __LINE__ . "行"

     

     

    判断的结果为布尔值。

    常用形式:if ( defined (某常量名) == false ){ .....这里可以去定义该常量;}

    实际上,可以这样:

    $result = defined (某常量名);//结果是truefalse

  • 相关阅读:
    什么是软件质量?
    软件生存周期及其模型是什么?
    给你一个网站,你如何测试?
    jquery中$.get()提交和$.post()提交有区别吗?
    JQuery有几种选择器?
    ajax和layui总结
    md5加密
    Collection接口相关介绍
    JS 中document.URL 和 windows.location.href 的区别
    window.location.href的用法(动态输出跳转)
  • 原文地址:https://www.cnblogs.com/ybygb-geng/p/9546911.html
Copyright © 2020-2023  润新知