当前位置:首页 > PHP教程 > php应用 > 列表

PHP5.6 CONST新特性几个例子

发布:smiling 来源: PHP粉丝网  添加日期:2016-08-18 17:41:01 浏览: 评论:0 

百度搜索了一下关于PHP5.6新特性发现本站有整理过一篇相关的文章,但仔细对比了一下本文章与它有一些区别,下面我们来看看.

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'));

Tags: PHP5 6 CONST PHP新特性

分享到: