您的位置:博客首页 >> 业界资讯 >> PHP 5.4.0 released!

PHP 5.4.0 released!

日志编号:77 发表时间: 2012-03-02 10:59:51 关注次数:4638
    PHP开发团队于今日(美国时间3月1日)发表了PHP 5.4正式版。并声明php 5.4将会是最后一个支持windows XP、2003的版本,在PHP 5.4.0之后,开发者不会再发布针对这些平台的二进制包。不过使用者仍旧可以通过自己VC编译。就如现在不提供VC6版本一样。
    如果从PHP 5.3升级到PHP 5.4,则需要参考这份升级指南:http://cn.php.net/migration54,包含5.3和5.4的区别。
    PHP 5.4.0的主要功能有:
以下为引用内容:

1、New language syntax including Traitsshortened array syntax and more(新语法) 
2、Improved performance and reduced memory consumption(内存和性能) 
3、Support for multibyte languages now available in all builds of PHP at the flip of a runtime switch 
4、Built-in webserver in CLI mode to simplify development workflows and testing (内置供开发和测试所用的命令行服务模式)
5、Cleaner code base thanks to the removal of multiple deprecated language features(去掉过时代码、函数,比如5.3去掉了split函数) 

Many more improvements and fixes 


功能变更:
以下为引用内容:

1、Register globals, magic quotes and safe mode were removed (这个……)
2、The break/continue $var syntax was removed 
3、The ini option allow_call_time_pass_reference was removed 
4、The PHP default_charset is now "UTF-8" within the distributed php.ini files, but still defaults to "" 


详细变动:http://www.php.net/ChangeLog-5.php#5.4.0

关于功能变动,说几点:
1、Register globals, magic quotes and safe mode去掉了。这是好事,不会再那么麻烦了。当然,后两者创造出来就是为了安全,但如果PHP这边(包括配置)已经解决了这个安全问题,很显然就没存在的意义了。
    magic_quotes_gpc, magic_quotes_runtime and magic_quotes_sybase ini options. get_magic_quotes_gpc, get_magic_quotes_runtime等函数仍旧有效,但返回值为false了 

2、数组,现在更加随意了:
先前:
$array = array(
    "foo" => "bar",
    "bar" => "foo"
);
现在可以:
$array = [
    "foo" => "bar",
    "bar" => "foo",
    1=>'a',
    true => "d",
];
?> 
括号可以是方括号,键和值也可以是任意类型了。
3、内置开发服务(对本人而言,这功能用的次数估计不会超过10):
$ cd ~/public_html
$ php -S localhost:8000 foo/a.php
这样就会显示/public_html/foo/a.php相关信息及返回值了。
4、不再支持sqlite扩展(sqlite3和pdo_sqlite不受影响)
5、<?=默认开启且不受short_open_tag影响,也就是说,短标记始终有效了。
6、php.ini的default_charset由 ISO-8859-1变为UTF-8。不过我从不去php.ini设置这个的,包括mysql的配置文件。均可以由编程中实现。
7、新增http_response_code()函数,用法:<?php http_response_code(404);?>,就会输出404错误页面。如果无指定参数,则返回状态(一般为200)
8、增加max_input_vars,5.3.9加入,看这里:http://www.flashgou.com/show/64
9、新增$_SERVER['REQUEST_TIME_FLOAT'],跟微秒时间有关。可以自己测试下看结果加深印象(恩,我现在没印象)。
 
其他的不涉及编程及配置,不用理会。

    对于5.3和5.2版本用户来说,由于5.4变动了Register globals, magic quotes and safe mode,因此对程序会有影响,所以要更新的话,得连着修改程序。建议再等等,或者多进行测试。
    安装方面与php 5.3.3+无异,可参考安装方面的文章。
本站不提供讨论功能。
本站所有非新闻类文章均为原创,且禁止转载。
本站为了获得更多流量赚取广告费,难免会有以次充好的文章,望见谅,勿鄙视。