当前位置: 网学 > 编程文档 > PHP > 正文

PHP5.5 将会带来哪些新特征

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 13/01/02
最受欢迎的改变。提议添加一个新的语法来定义一个属性的设置/读取:<?php  class TimePeriod {      public $seconds;       public $hours {          get { return $this->seconds / 3600; }          set { $this->seconds = $value * 3600; }      }  }  $timePeriod = new TimePeriod;  $timePeriod->hours = 10;  var_dump($timePeriod->seconds); // int(36000)  var_dump($timePeriod->hours);   // int(10) 当然还有更多的功能,比如只读属性。如果你想要知道更多,请参阅 RFC。生成器 目前,自定义迭代器很少使用,因为它们的实现,需要大量的样板代码。生成器解决这个问题,并提供了一种简单的样板代码来创建迭代器。例如,你可以定义一个范围函数作为迭代器:<?php  function *xrange($start, $end, $step = 1) {      for ($i = $start; $i < $end; $i += $step) {          yield $i;      }  }  foreach (xrange(10, 20) as $i) {      // ...  } 上述xrange函数具有与内建函数相同的行为,但有一点区别:不是返回一个数组的所有值,而是返回一个迭代器动态生成的值。获取更深入的介绍请参阅 RFC。列表解析和生成器表达式 列表解析提供一个简单的方法对数组进行小规模操作:$firstNames = [foreach ($users as $user) yield $user->firstName]; 上述列表解析相等于下面的代码:$firstNames = [];  foreach ($users as $user) {      $firstNames[] = $user->firstName;  } 也可以这样过滤数组:$underageUsers = [foreach ($users as $user) if ($user->age < 18) yield $user]; 生成器表达式也很类似,但是返回一个迭代器(用于动态生成值)而不是一个数组。获取更多的例子请查看 邮件列表中的公告。结束语 正如你所看到的,有很多很棒的新特征将加入到PHP5.5。不过,正如我所说的,PHP5.5还在早期的开发阶段,因此我们不确定上述新特征是否都能加入。如果你想保持新特性更新,或者想要帮助我们讨论或开发,请订阅我们的 内部邮件列表。原文链接:http://www.oschina.net/question/157182_61259

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号