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 相关文章推荐
PHP 组件化编程技巧
Jun 06 PHP
在PHP中养成7个面向对象的好习惯
Jul 17 PHP
学习php笔记 字符串处理
Oct 19 PHP
php中使用preg_match_all匹配文章中的图片
Feb 06 PHP
php通过字符串调用函数示例
Mar 02 PHP
php下获取http状态的实现代码
May 09 PHP
PHP定时任务延缓执行的实现
Oct 08 PHP
php微信开发之批量生成带参数的二维码
Jun 26 PHP
thinkPHP多域名情况下使用memcache方式共享session数据的实现方法
Jul 21 PHP
PHP基于反射机制实现插件的可插拔设计详解
Nov 10 PHP
PHP使用标准库spl实现的观察者模式示例
Aug 04 PHP
PHP基于phpqrcode类生成二维码的方法示例详解
Aug 07 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 PHP
PHP保留两位小数并且四舍五入及不四舍五入的方法
2013/09/22 PHP
php数组索引与键值操作技巧实例分析
2015/06/24 PHP
Zend Framework分页类用法详解
2016/03/22 PHP
php对xml文件的增删改查操作实现方法分析
2017/05/19 PHP
利用laravel+ajax实现文件上传功能方法示例
2017/08/13 PHP
IE中radio 或checkbox的checked属性初始状态下不能选中显示问题
2009/07/25 Javascript
jQuery 遍历json数组的实现代码
2020/09/22 Javascript
IE与Firefox在JavaScript上的7个不同句法分享
2011/10/30 Javascript
jQuery筛选器children()案例详解(图文)
2013/02/17 Javascript
js点击出现悬浮窗效果不使用JQuery插件
2014/01/20 Javascript
js 3秒后跳转页面的实现代码
2014/03/10 Javascript
document.write的几点使用心得
2014/05/14 Javascript
ajax图片上传,图片异步上传,更新实例
2016/12/30 Javascript
[29:59]完美世界DOTA2联赛PWL S3 Forest vs access 第二场 12.11
2020/12/13 DOTA
[54:10]完美世界DOTA2联赛PWL S2 Magma vs FTD 第二场 11.29
2020/12/03 DOTA
Python实现批量转换文件编码的方法
2015/07/28 Python
python3读取MySQL-Front的MYSQL密码
2017/05/03 Python
Python实现将sqlite数据库导出转成Excel(xls)表的方法
2017/07/17 Python
python3爬虫之设计签名小程序
2018/06/19 Python
一篇文章教你用python画动态爱心表白
2020/11/22 Python
MANGO官方网站:西班牙芒果服装品牌
2017/01/15 全球购物
澳大利亚优质葡萄酒专家:Vintage Cellars
2019/01/08 全球购物
Turnbull & Asser官网:英国皇室御用的顶级定制衬衫
2019/01/31 全球购物
澳大利亚婴儿、幼儿和儿童在线设计师商店:Smooch Baby
2019/02/16 全球购物
J2EE面试题
2016/03/14 面试题
小学毕业家长寄语
2014/01/19 职场文书
客服部班长工作责任制
2014/02/25 职场文书
网络工程师自荐书范文
2014/04/01 职场文书
会计毕业生自荐书
2014/06/12 职场文书
德育标兵事迹材料
2014/08/24 职场文书
党的群众路线教育实践活动个人对照检查材料
2014/09/22 职场文书
幽默导游词开场白
2015/05/29 职场文书
秋收起义观后感
2015/06/11 职场文书
《植物妈妈有办法》教学反思
2016/02/23 职场文书
2016最新离婚协议书范本及程序
2016/03/18 职场文书