1)较短的数组/对象语法,如JavaScript(如前所述)
2)允许const
变量像计算一样允许计算结果define()
。
3)直接从构造函数链接: new User()->name('Ryan');
4)数组解引用: something_that_returns_array()[4];
5)扩展了SPL支持。SPL在将字符串和数组函数(除其他事项外)重新想象为对象方面做得不错。扩展SPL可以解决很多关于这种语言过于僵硬的问题。
6)使用ArrayObject()
应与使用一样透明array()
。您应该能够不做array_filter($array_object_instance)
任何事情array_filter($array_object_instance->getArrayCopy())
。当然更好$array_object_instance->filter()
。
7)完整的Unicode会很好。
8)停止进行奇怪的自动类型转换。例如,如果echo
不首先将其显式类型转换为字符串,就不能使用SimpleXMLElement对象。或者至少在事情发生时抛出一些东西(例如,在严格模式下或任何模式下error_reporting(-1)
)。
9)支持多个线程,或某种事件/异步回调。在尝试通过cURL上传大文件时,这一点最为重要。代替老式的线程,像Apple的Grand Central Dispatch这样的东西会更好。甚至是类似JavaScript的东西,您都可以在其中发出异步请求并定义回调。
10)一致的命名/顺序(即针堆)会很好,但是我认为使用SPL可以更好地解决。
11)官方支持的交互式PHP Shell,例如IRB。Facebook有一个phpsh
用Python编写的调用,但它缺乏我想看到的修饰。
12)对于Reflection API,添加对(a)常量(全局和类)的文档块注释的支持,以及(b)对将类似PHPDoc的注释解析为合理的数据结构的支持。有一个名为“ docblock”的PECL软件包试图做到这一点,但作者似乎并没有走得太远。
编辑:13)我也很想看看使用!
和?
在函数名称中的能力-像Ruby一样。