PHP5.4特性简述{转载}
2012-02-07 19:10
651 查看
1. Buid-in web server
PHP5.4内置了一个简单的Web服务器,这样在做一些简单程序就方便多了,省去了环境配置的工作,特别对于初学者来说。把当前目录作为Root Document只需要这条命令即可:
$ php -S localhost:3300
也可以指定其它路径:
$ php -S localhost:3300 -t /path/to/root
还可以指定路由:
$ php -S localhost:3300 router.php
参考:PHP: Build-in web server
2. Traits
Traits提供了一种灵活的代码重用机制,即不像interface一样只能定义方法但不能实现,又不能像class一样只能单继承。至于在实践中怎样使用,还需要深入思考。官网的一个例子:
trait SayWorld { public function sayHello() { parent::sayHello(); echo "World!\n"; echo 'ID:' . $this->id . "\n"; } } class Base { public function sayHello() { echo 'Hello '; } } class MyHelloWorld extends Base { private $id; public function __construct() { $this->id = 123456; } use SayWorld; } $o = new MyHelloWorld(); $o->sayHello(); /*will output: Hello World! ID:123456 */
参考:http://cn.php.net/manual/en/language.oop5.traits.php
3. Short array syntax
PHP5.4提供了数组简短语法:$arr = [1,'james', 'james@fwso.cn'];
4. Array dereferencing
function myfunc() { return array(1,'james', 'james@fwso.cn'); }
我认为比数组简短语法更方便的是dereferencing,以前我们需要这样:
$arr = myfunc(); echo $arr[1];
在PHP5.4中这样就行了:
echo myfunc()[1];
5. Upload progress
Session提供了上传进度支持,通过$_SESSION["upload_progress_name"]就可以获得当前文件上传的进度信息,结合Ajax就能很容易实现上传进度条了。参考:http://www.laruence.com/2011/10/10/2217.html
6. JsonSerializable Interface
实现了JsonSerializable接口的类的实例在json_encode序列化的之前会调用jsonSerialize方法,而不是直接序列化对象的属性。参考:http://www.laruence.com/2011/10/10/2204.html
7. Use mysqlnd by default
现在mysql, mysqli, pdo_mysql默认使用mysqlnd本地库,在PHP5.4以前需要:$./configure --with-mysqli=mysqlnd
现在:
$./configure --with-mysqli
8. 更多
http://cn2.php.net/releases/NEWS_5_4_0_beta2.txtPS.转载:http://fwso.cn/php/php5-4新特性小结/
相关文章推荐
- PHP 5.3、5.4、5.5、5.6 中的新特性
- PHP5.4新特性小结
- PHP5.4最新特性
- PHP 5.4 中的新特性
- PHP 5.4中的traits特性
- 转载:关于 PHP 5.4 你所需要知道的
- PHP5.4新特性
- PHP 5.4 的 Trait 特性
- PHP 5.4 的 Trait 特性_实现类的多重继承
- php5.3,5.4,5.5,5.6 中新特性
- 试玩 PHP 5.4 的新特性
- PHP5.4最新特性
- PHP5.4发布:新特性与改动
- PHP5.4推出了,有几个特性值得关注
- PHP5.4最新特性
- PHP5.4最新特性
- php5.4新特性实践
- PHP 5.4 的 Trait 特性
- [转] php5.3 PHP5.4 PHP5.5 新特性/使用PHP5.5要注意的
- PHP 5.4正式版重要新特性