最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 【PHP】常量、变量

    正文概述 转载于:掘金(非常厉害)   2021-07-27   308

    php常量

    常量,即值不变的量。常量被定义后,在脚本(PHP文件)的其他任何地方都不能改变。

    定义方式

    PHP中使用 define() 方法来定义常量。

    //语法格式:
    define(string constant_name, mixed value, case_sensitive = false);
    //case_sensitive:大小写是否敏感,默认为false
    

    获取常量值的方式

    获取常量值有两种方式:

    1. 使用常量名直接获取
    2. 使用函数 constant() 获取

    两者效果一样(都可以获取到某个已定义常量的值),但是使用函数可以 动态 输出不同的常量。

    constant()函数

    //语法
    mixed constant(string const_name);
    //const_name:要获取值的常量的名称,也可以是存储常量名的变量
    //获取成功=>返回常量的值
    //获取失败=>返回常量未定义(报错)
    

    使用常量时,不能在常量名前添加$ 符号,不然会将常量转换成新的未定义变量使用,会导致报错。

    判断常量是否定义

    判断一个常量是否定义,使用函数 defined()

    //语法
    bool defined(string constant_name); //返回true | false
    

    预定义常量

    PHP中可以使用 预定义常量 来获取PHP中的信息。

    常量名称类型说明
    __FILE__默认常量指PHP文件的名称及其所在路径__LINE__默认常量指PHP程序的行数__DIR__默认常量指PHP文件所在目录__CLASS__类的名称(V 4.3.0)返回类的名称__FUNCION__函数名称(V 4.3.0)返回该函数被定义时的名称__METHOD__方法的名称(V 5.0.0)返回类的方法的名称PHP_VERSION内建常量指当前PHP版本PHP_OS内建常量指当前PHP解析器的操作系统的名称TRUE真值(true)FALSE假值(false)NULL空值(null)E_ERROR指最近的错误之处E_WARNING指最近的警告之处E_PARSE指解析语法有潜在问题之处E_NOTICE指发生不同寻常的提示,但是不一定是错误处

    魔术常量

    指的是PHP预定常量中的,以双下划线开头双下划线结尾的那几个常量,它们的值会随在脚本中的位置不同而改变。一共有8个(还有两个是__TRAIT__、__NAMESPACE__)。

    echo __FILE__; //E:\WebProject\PHP_Study\first_day\demo1.php
    echo '<br/>';
    echo __LINE__; //4
    echo '<br/>';
    echo __DIR__; //E:\WebProject\PHP_Study\first_day
    echo '<br>';
    
    class test{
    	function _test(){
    		echo '类名为:'  . __CLASS__;//类名为:test
    		echo '<br />';
    		echo  '函数名为:' . __FUNCTION__;//函数名为:_test
    		echo '<br />';
    		echo  '方法名为:' . __METHOD__;//方法名为:test::_test
    	}
    }
    
    $a = new test();//实例化
    $a->_test();//调用方法
    

    调试常量

    预定义常量最后那几个以E+下划线开头的常量是用来调试的,需要搭配函数 error_reporting() 来使用。 error_reporting()函数 规定报告哪个错误,该函数设置当前脚本的错误报告级别,返回旧的错误报告级别。(报告级别,即错误代号,是数字) 【PHP】常量、变量

    //语法格式
    error_reporting(report_level);
    //report_level	可选。规定当前脚本的错误报告级别。值数字和常量名都能接受,但是,考虑未来的 PHP 版本的兼容性,推荐使用常量名。
    
    //Disable error reporting
    error_reporting(0);
    
    //Report runtime errors
    error_reporting(E_ERROR | E_WARNING | E_PARSE);
    
    //Report all errors
    error_reporting(E_ALL);
    

    PHP变量

    变量是指在程序执行过程中数值可以变化的量。变量通过一个名字(变量名)来标识的。系统为程序中的每一个变量分配一个存储单元,变量名实质上就是计算机内存单元的命名。因此,借助变量名即可访问内存中的数据。

    变量声明

    PHP4之后,使用变量前无需声明,只需要直接为变量赋值即可。

    命名规范

    PHP中的变量名,以 \$+标识符 来表示。标识符由字母、下划线、数字组成,并且不能以数字开头,且区分大小写。

    $a1 = 1;
    $_a1 = 1;
    $A = 1;
    

    变量赋值

    变量赋值,指的是给变量赋予一个具体的数据值。有两大种赋值方法:

    1. 直接赋值
    2. 间接赋值

    直接赋值

    字符串和数字类型的变量的赋值,可以通过 = 来实现。

    $name = 'Maccx';
    

    间接赋值

    间接赋值分为两种:

    1. 变量间赋值
    2. 引用赋值

    变量间赋值

    赋值之后的两个变量,使用各自的内存,互不干扰。(点两瓶百威,各喝各的)

    $name_A = 'Maccx';
    $name_B = $name_A;//变量间赋值
    $name_A = 'Deeing';
    echo $name_A;//'Deeing'
    echo $name_B;//'Maccx'
    

    引用赋值

    用不同的名字访问同一个变量内容,当改变其中一个变量的时候,另一个也跟着变。使用 & 符号表示引用。(点一瓶百威,两根吸管一起喝)

    $a = 1;
    $b = & $a;//引用赋值
    $b = 2;
    echo $a;//输出2
    

    变量类别

    1. 局部变量
    2. 全局变量
    3. 静态变量
    4. 可变变量
    5. 预定义变量

    变量作用域

    变量须在有效范围内使用,如果变量超出有效范围,则变量失去了其意义。(广州的羊城通不能在别的省使用,因为羊城通的有效范围就是广州。)

    局部变量

    在函数内部定义的变量,叫做该函数的局部变量。其作用域就是所在函数的内部。

    function test(){
    	$num = 1000;//定义一个局部变量,在函数test内部可以正常访问
    	echo $num;//输出1000
    }
    test();
    echo "<br/>";
    //在函数外部却没有这个变量
    var_dump(isset($num));//输出false,不存在该变量
    

    【PHP】常量、变量 这是因为,一般变量会在函数调用结束后即刻销毁,其存储的数据值也会被清除,所在用的空间也会被释放。

    全局变量

    被定义在所有函数之外的变量,其作用域是整个PHP文件(除了用户自定义的函数)。如果希望在自定义函数内部也可以使用全局变量,则要在全局变量前使用 global 关键字对变量进行声明。

    $global_var = '我是全局变量';
    
    function test1(){
    	echo $global_var.'<br/>';//示警,说变量未定义,说明在函数内部无法访问全局变量
    	return __FUNCTION__.'<br/>';
    }
    
    function test2(){
    	return __FUNCTION__.'<br/>';
    }
    
    function test3(){
    	return __FUNCTION__.'<br/>';
    }
    //.....假设下面还有很多函数
    function use_global(){
    	global $global_var; //声明全局变量
    	echo $global_var;
    	return __FUNCTION__.'<br/>';
    }
    
    use_global();
    test1();
    

    【PHP】常量、变量

    静态变量

    能够在函数调用结束后保留其数据值,当再次调用函数时(回到其作用域),又可以继续使用上一次的值。

    静态变量和局部变量的区别就是,局部变量在函数调用结束后立刻被销毁,静态变量则不会。

    使用静态变量时,使用 static 关键字来声明。

    function use_static_var(){
    	static $num = 0;//声明静态变量
    	$n = 0;//声明局部变量
    	$num++;
    	$n++;
    	return '[静态变量:'.$num.' 局部变量:'.$n.']<br/>';
    }
    
    echo use_static_var();
    echo use_static_var();
    echo use_static_var();
    

    【PHP】常量、变量

    可变变量

    一种独特的变量,它允许动态改变一个变量的名称。其工作原理是 该变量的名称由另一个变量的值来确定。 实现过程就是在变量前再多加一个$符号。

    $a = '我是a变量';
    $b = 'a';//b变量存储着a变量的标识符(变量名)
    echo $$b;//输出可变变量
    

    【PHP】常量、变量

    预定义变量(超级全局变量)

    超级全局变量,在一个脚本的全部作用域中可用。

    名称说明
    $GLOBALS$GLOBALS 是一个包含了全部变量的全局组合数组。变量的名字就是数组的键。$_SERVER$_SERVER 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。这个数组中的项目由 Web 服务器创建。$_REQUEST用于收集HTML表单提交的数据。$_POST$_POST 被广泛应用于收集表单数据,在HTML form标签的指定该属性:"method="post"。$_GET$_GET 同样被广泛应用于收集表单数据,在HTML form标签的指定该属性:"method="get"。$_GET 也可以收集URL中发送的数据。

    详细的使用方法可以查阅菜鸟教程。


    起源地下载网 » 【PHP】常量、变量

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元