PHP const定义常量及global定义全局常量实例解析


Posted in PHP onMay 28, 2020

const 常量

  • 1.在定义时必须被初始值,
  • 2.前面不加任何修饰符
  • 3.变量名字母一般都大写
  • 4.常量可以被子类继承
  • 5.一个常量是属于一个类的,而不是某个对象的

作用:当某些值是固定不变的,就用const

1.const 定义的常量和define()定义的常量的区别?

希望一个成员变量不被修改 例如圆周率 3.1415926

定义:const 常量名=值; 没有$符

访问:类名 ::常量名 或 接口名::常量名

<?php
defined('TEXT'); //检查一个名称的常量是否存在
class A
{
    const TAX_RATE = 0.08;
    public function payTax($var)
    {
        return $var * A::TAX_RATE;
    }
}
$a = new A();
echo $a->payTax(200);
  • 用法一:const用于类成员变量,一经定义不可修改,define用于全局常量,不可用于类成员变量的定义,const可在类中使用,define不能。
  • 用法二:const定义的常量大小写敏感,而define可通过第三个参数(为TRUE表示大小写不敏感)来指定大小写是否敏感。在运行时定义一个常量。define('TXE',100,TRUE);
  • 用法三:const不能在条件语句中定义常量,而define函数可以。if($a>10){define('LE','hello');}

2.global定义的全局常量和$GLOBALS的区别?

$GLOBALS(超全局变量) — 引用全局作用域中可用的全部变量, 一个包含了全部变量的全局组合数组。变量的名字就是数组的键。

<?php
function test()
{
  $foo = "local variable";
  echo '$foo in global scope: ' . $GLOBALS["foo"] . "\n";
  echo '$foo in current scope: ' . $foo . "\n";
}

$foo = "Example content";
test();

Global的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require的所有文件

代码如下:

<?PHP
$a = 123;
function aa()
{
  global $a; //如果不把$a定义为global变量,函数体内是不能访问函数体外部的$a的,但是可以定义一个相同的名字$a,此时这个变量是局部echo

  $a; //变量,只能在函数体内部使用。
}
aa();

总结:在函数体内定义的global变量,函数体外可以使用,在函数体外定义的global变量不能在函数体内使用,

代码如下:

<?php
global $a;
$a = 123; //必须分开赋值
function f()
{
  echo $a; //错误,
}
//再看看下面一例
function f()
{
  global $a;
  $a = 123;
}
f();
echo $a; //正确,可以使用

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
解析如何去掉CodeIgniter URL中的index.php
Jun 25 PHP
PHP使用Alexa API获取网站的Alexa排名例子
Jun 12 PHP
Laravel 4 初级教程之Pages、表单验证
Oct 30 PHP
PHP获取当前所在目录位置的方法
Nov 26 PHP
PHP rsa加密解密使用方法
Apr 27 PHP
php随机显示指定文件夹下图片的方法
Jul 13 PHP
修改PHP脚本使WordPress拦截垃圾评论的方法示例
Dec 10 PHP
利用php输出不同的心形图案
Apr 22 PHP
Thinkphp微信公众号支付接口
Aug 04 PHP
删除PHP数组中头部、尾部、任意元素的实现代码
Apr 10 PHP
Laravel框架用户登陆身份验证实现方法详解
Sep 14 PHP
php面试中关于面向对象的相关问题
Feb 13 PHP
PHP实现获取文件mime类型多种方法解析
May 28 #PHP
php生成随机数/生成随机字符串的方法小结【5种方法】
May 27 #PHP
php+mysql实现的无限分类方法类定义与使用示例
May 27 #PHP
php与阿里云短信接口接入操作案例分析
May 27 #PHP
PHP开发API接口签名生成及验证操作示例
May 27 #PHP
php+websocket 实现的聊天室功能详解
May 27 #PHP
php+js实现的拖动滑块验证码验证表单操作示例【附源码下载】
May 27 #PHP
You might like
正则表达式语法
2006/10/09 Javascript
在线竞拍系统的PHP实现框架(二)
2006/10/09 PHP
PHP下10件你也许并不了解的事情
2008/09/11 PHP
php 接口类与抽象类的实际作用
2009/11/26 PHP
PHP PDO函数库详解
2010/04/27 PHP
Fine Uploader文件上传组件应用介绍
2013/01/06 PHP
php连接函数implode与分割explode的深入解析
2013/06/26 PHP
php截取指定2个字符之间字符串的方法
2015/04/15 PHP
PHP中的静态变量及static静态变量使用详解
2015/11/05 PHP
PHP实现基于回溯法求解迷宫问题的方法详解
2017/08/17 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
2018/06/13 PHP
js Dialog 实践分享
2012/10/22 Javascript
js获取网页可见区域、正文以及屏幕分辨率的高度
2014/05/15 Javascript
jquery+php随机生成红包金额数量代码分享
2015/08/27 Javascript
更高效的使用JQuery 这里总结了8个小技巧
2016/04/13 Javascript
IE和Firefox之间在JavaScript语法上的差异
2016/04/22 Javascript
解析NodeJs的调试方法
2016/12/11 NodeJs
js 判断数据类型的几种方法
2017/01/13 Javascript
详解vue-cli中配置sass
2017/06/21 Javascript
实时监控input框,实现输入框与下拉框联动的实例
2018/01/23 Javascript
Vue2 添加数据可视化支持的方法步骤
2019/01/02 Javascript
微信小程序图片左右摆动效果详解
2019/07/13 Javascript
在vue中动态修改css其中一个属性值操作
2020/12/07 Vue.js
王纯业的Python学习笔记 下载
2007/02/10 Python
Python类装饰器实现方法详解
2018/12/21 Python
python英语单词测试小程序代码实例
2019/09/09 Python
python已协程方式处理任务实现过程
2019/12/27 Python
Django静态资源部署404问题解决方案
2020/05/11 Python
Python日志处理模块logging用法解析
2020/05/19 Python
python使用正则表达式匹配txt特定字符串(有换行)
2020/12/09 Python
印尼美容产品购物网站:PerfectBeauty.id
2017/12/01 全球购物
马来西亚太阳镜、眼镜和隐形眼镜网上商店:Focus Point
2018/12/13 全球购物
省级优秀班集体申报材料
2014/05/25 职场文书
社区党风廉政建设调研报告
2015/01/01 职场文书
员工离职证明范本
2015/06/12 职场文书
听课评课活动心得体会
2016/01/15 职场文书