PHP5.6 CONST新特性几个例子

PHP5.6起CONST新特性定义类常量可以使用常量标量表达式(Constant scalar expressions),例如:

<?php
 
class MyTimer {
    const SEC_PER_DAY = 60 * 60 * 24;
}
 
?>

define和CONST的区别是define可以用于定义全局常量,而CONST是定义类的常量。

static静态变量与define,CONST的区别是static定义的变量是可以改变的,而后两者不行,并且static静态变量是随类直接在内存中初始化,可以直接用,如$oneclass::hobby.

define可以定义数组吗?例如define(‘A_ARRAY’,array(‘o’=>’ooo’,’x’=>’xxx’)).

在PHP5.6之前是不行的,但是可以通过serialize把数组序列化,如:

# define constant, serialize array
define ("FRUITS", serialize (array ("apple", "cherry", "banana")));
 
# use it
$my_fruits = unserialize (FRUITS);

PHP5.6之后可以直接const定义一个数组:

const DEFAULT_ROLES = array('guy', 'development team');

或者:

const DEFAULT_ROLES = ['guy', 'development team'];

如果是PHP7,可以直接用define定义数组:

define('DEFAULT_ROLES', array('guy', 'development team'));

时间: 2024-09-25 15:11:09

PHP5.6 CONST新特性几个例子的相关文章

PHP5的XML新特性

php5|xml 面向的读者 这篇文章的面向对象是所有对PHP5的XML新功能感兴趣的各个水平的PHP开发者.我们假定读者掌握XML的基本知识.然而,如果你已经在你的PHP当中使用了XML,那么这篇文章也会让你受益非浅. 介绍 在当今的互联网世界,XML已经不再是一个时髦词了,它已经被广泛的接受和规范的使用了.因此相对于PHP4,PHP5对于XML的支持更受到了重视.在PHP4中你面对的几乎都是非标准,API中断,内存泄漏以及其它不完全的功能.尽管有些不足已经在PHP4.3中得到改进,开发者们还

PHP5的XML新特性_php基础

面向的读者 这篇文章的面向对象是所有对PHP5的XML新功能感兴趣的各个水平的PHP开发者.我们假定读者掌握XML的基本知识.然而,如果你已经在你的PHP当中使用了XML,那么这篇文章也会让你受益非浅. 介绍 在当今的互联网世界,XML已经不再是一个时髦词了,它已经被广泛的接受和规范的使用了.因此相对于PHP4,PHP5对于XML的支持更受到了重视.在PHP4中你面对的几乎都是非标准,API中断,内存泄漏以及其它不完全的功能.尽管有些不足已经在PHP4.3中得到改进,开发者们还是决定抛弃原有的代

利用好PHP5.3的新特性,实现单例模式

5.3以前也可实现,但代码较繁琐, 如下: class MOrder extends SModel{ protected static $handle; //单例句柄 private function __construct(){ //something } /** * 获取本类单例的方法,公开 * * @return MOrder */ public static function instance() { if(self::$handle){ return self::$handle; }

PHP5.3之后的新特性

  从PHP4到PHP5,实现了由个人开发语言到专业互联网的发展,见证着PHP从山寨走上正规大军的发展.PHP6还在酝酿中,相信PHP5会作为PHP6小试牛刀的场地. PHP5.3是PHP5的一个里程碑,加入了大量新特性.PHP功能是越来越多了,但是PHP的语法却越来越丑陋,有时加入了新功能,而新功能又带来了新问题,为了修复问题又要加入新的语法来修复.没有PHP的基础的朋友也不用担心,先对PHP5.3有个基本的了解.等学完后面知识再回过头来看PHP5.3的新特性你会有个全新的理解和感悟. 1.首

PHP5.6新特性例子举证

PHP5.6已经发布Alpha版,预示着下一个大版本的升级即将到来,PHP5.6带来了哪些新特性?本文将介绍这些特性,并讨论它们可以给开发者带来哪些好处. 常量标量表达式(Constant scalar expressions) 在常量.属性声明和函数参数默认值声明时,以前版本只允许常量值,PHP5.6开始允许使用包含数字.字符串字面值和常量的标量表达式.  代码如下 复制代码 <?php const ONE = 1; const TWO = ONE * 2; class C {     con

PHP5.0新特性(ZT)

php5 (一) Zend 2.0的诞生现在的PHP4所使用的基本文法是被称之为Zend 引擎的脚本编译引擎.这个就是PHP4的优良机能的原因之一,是作为对PHP3的改进而生成的一种语言.大家一直认为,PHP4的性能根据当初的目标,比PHP3有了很大的提升,在网络编程的世界里占据了很大的份额. 开发了Zend 引擎的Zend公司是在开发PHP4的同时,由PHP3的主要开发者Zeev Suraski和Andi Gutmans所创立的企业合并而来的.Zend的名称是由Zeev和Andi的名字合起来组

php5.3 PHP5.4 PHP5.5 php5.6 新特性/使用PHP5.5/PHP5.6要注意的

因为用到PHP新版本,一些新特性必须要了解,且有些可以在开发时就使用,如果不使用,那么何必升级PHP版本呢,显得有些得不偿失了! 所以整理了一下 一些特性,有可能不全,待添加 PHP7.0 和PHP7.1.X新特性请看 http://blog.csdn.net/fenglailea/article/details/52717364 1.PHP 5.3中的新特性  1.1 PHP 5.3中的新特性  1.1.1. 支持命名空间 (Namespace) 毫无疑问,命名空间是PHP5.3所带来的最重要

PHP5.3新特性小结_php技巧

本文总结分析了PHP5.3新特性.分享给大家供大家参考,具体如下: 1.命名空间 解决了类,函数和常量名冲突的问题 2.静态绑定 继承时父类可以直接调用子类重写父类的方法 class A { public static function who() { echo __CLASS__; } public static function test() { static::who(); // 后期静态绑定从这里开始 } } class B extends A { public static funct

JavaScript检测是否支持CSS3、HTML5新特性的例子

伴随着今年10月底HTML5标准版的发布,未来使用H5的场景会越来越多,这是令web开发者欢欣鼓舞的事情.然而有一个现实我们不得不看清,那就是IE系列浏览器还占有一大部分市场份额,以IE8.9为主,windows8.1的用户已经用上了IE10/11,而考虑我国的国情,IE6.7依然存留不少.在我们放手用HTML5开发的时候,新特性支持度检测就是必不可少的了.一种方式是用navigator.userAgent或navigator.appName来检测浏览器类型和版本,不过这种方式不是很可靠,浏览器