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初学者(入门学习经验谈)
Oct 12 PHP
深入file_get_contents与curl函数的详解
Jun 25 PHP
php操作XML、读取数据和写入数据的实现代码
Aug 15 PHP
PHP向socket服务器收发数据的方法
Jan 24 PHP
PHP JSON格式的中文显示问题解决方法
Apr 09 PHP
php使用SAE原生Mail类实现各种类型邮件发送的方法
Oct 10 PHP
thinkPHP5.0框架简单配置作用域的方法
Mar 17 PHP
Laravel框架路由管理简单示例
May 07 PHP
php开发最强大的IDE编辑的phpstorm 2020.2配置Xdebug调试的详细教程
Aug 17 PHP
php框架知识点的整理和补充
Mar 01 PHP
PHP 裁剪图片
Mar 09 PHP
如何用PHP websocket实现网页实时聊天
May 26 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
PHP采集类snoopy详细介绍(snoopy使用教程)
2014/06/19 PHP
php实现curl模拟ftp上传的方法
2015/07/29 PHP
锋利的jQuery 要点归纳(一) jQuery选择器
2010/03/21 Javascript
一个可绑定数据源的jQuery数据表格插件
2010/07/17 Javascript
用JQuery实现表格隔行变色和突出显示当前行的代码
2012/02/10 Javascript
javascript解决innerText浏览器兼容问题思路代码
2013/05/17 Javascript
jQuery 实现侧边浮动导航菜单效果
2014/12/26 Javascript
jQuery mobile类库使用时加载导航历史的方法简介
2015/12/04 Javascript
浅谈angularJS中的事件
2016/07/12 Javascript
浅谈JavaScript的自动垃圾收集机制
2016/12/15 Javascript
Bootstrap CSS布局之表格
2016/12/17 Javascript
jQuery的ajax中使用FormData实现页面无刷新上传功能
2017/01/16 Javascript
微信小程序实现图片预加载组件
2017/01/18 Javascript
JavaScript之DOM插入更新删除_动力节点Java学院整理
2017/07/03 Javascript
three.js加载obj模型的实例代码
2017/11/10 Javascript
webpack 从指定入口文件中提取公共文件的方法
2018/11/13 Javascript
vue实现移动端轻量日期组件不依赖第三方库的方法
2019/04/28 Javascript
Vue v-model组件封装(类似弹窗组件)
2020/01/08 Javascript
通过5个知识点轻松搞定Python的作用域
2016/09/09 Python
Python实现的多进程和多线程功能示例
2018/05/29 Python
python使用webdriver爬取微信公众号
2018/08/31 Python
Python Django实现layui风格+django分页功能的例子
2019/08/29 Python
python json.dumps() json.dump()的区别详解
2020/07/14 Python
python selenium xpath定位操作
2020/09/01 Python
在Pycharm中安装Pandas库方法(简单易懂)
2021/02/20 Python
css3.0 图形构成实例练习一
2013/03/19 HTML / CSS
HTML5移动端手机网站开发流程
2016/04/25 HTML / CSS
DC Shoes荷兰官方网站:美国极限运动品牌
2019/10/22 全球购物
禁毒宣传工作方案
2014/05/23 职场文书
学校周年庆活动方案
2014/08/22 职场文书
2015年清明节演讲稿范文
2015/03/17 职场文书
好人好事新闻稿
2015/07/17 职场文书
幼儿园园长六一致辞
2015/07/31 职场文书
公司中层管理培训心得体会
2016/01/11 职场文书
2022漫威和DC电影上映作品
2022/04/05 欧美动漫
默认网关不可用修复后过一会又不好使了解决方法
2022/04/08 数码科技