设为首页 收藏本站
查看: 596|回复: 0

[经验分享] php中const定义常量

[复制链接]

尚未签到

发表于 2017-12-29 18:02:47 | 显示全部楼层 |阅读模式
  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变量不能在函数体内使用,
  复制代码 代码如下:
  global $a;
  $a=123; 必须分开赋值
  function f()
  {
  echo $a; //错误,
  }
  //再看看下面一例
  function f()
  {
  global $a;
  $a=123;
  }
  f();
  echo $a; //正确,可以使用
  static定义的静态变量?

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-429444-1-1.html 上篇帖子: ueditor PHP版本使用方法 下篇帖子: <小田吃饺子> PHP:GD库 图片水印处理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表