引擎的添加内容
在 PHP V6,将添加 64 位的整数,同时保留 32 位整数。64 位引擎的转换名为 int64。将使用一个静态标签扩展 break 关键字。将从 ?: 操作符丢弃中间参数。例如,在下面的表达式中,如果 $_GET['var'] 计算为 true,则 $var 设置为 3。如果 $_GET['var'] 计算为 false 或没有设置,则 $var 设置为 $_GET['var']。
如果 $_GET['var'] 没有设置,将抛出 E_NOTICE。PHP V6 将规定对多维数组使用 foreach 语法。
foreach( $a as $k => list($a, $b)) {}
?>
在 PHP V5 中,{} 和 [] 都可用于访问字符串和数组元素中的字符。在 PHP V6 中,将删除 {},并且继续使用 [],而 [] 操作符将支持 substr()/array_slice() 函数。在 PHP V6 中,microtime() 在默认情况下返回一个浮点值。
OO 函数
在 PHP V6 中对 OO 函数进行了一些改进。添加了关键字 static:: 用于延迟静态绑定,这意味着将执行运行时静态数字计算。
支持名称空间
PHP V5 不支持名称空间,而是在一个全局名称空间中定义所有函数和变量。PHP V6 通过关键字 namespace 添加对名称空间的支持。为了定义一个已经定义的类名或函数名,必须使用名称空间将新的类或函数与已经存在的类或函数区分开来。XMLReader 是一个已经存在的类,但是假设您仍然想定义另一个 XMLReader。您应该这样定义 XMLReader 类:
$reader = new XmlNamespace\XMLReader();
$reader2= new XMLReader();
?>
为了在 XmlNamespace 中调用 XMLReader 类,需要使用前缀 XmlNamespace\。名称空间中可以包含类和函数,但不能包含变量。