PHP7 接受了 Return Type Declarations

2015-01-28 14:16:22 +08:00
 mactalk
https://wiki.php.net/rfc/return_types

```
function foo(): array {
return [];
}
```
4340 次点击
所在节点    PHP
19 条回复
lincanbin
2015-01-28 14:19:33 +08:00
希望加入强类型支持
denghongcai
2015-01-28 14:20:25 +08:00
尼玛,极强Golang既视感
skybr
2015-01-28 14:24:23 +08:00
和hacklang的博弈里终于退一步了.
Actrace
2015-01-28 14:42:07 +08:00
@lincanbin 强类型还不如用java。。。
Return type简直就是给自己挖坑。。。
tini9
2015-01-28 14:43:54 +08:00
@Actrace return type不是强制使用的吧,多一个选择也好,强类型对IDE支持还是很有用的
anewg
2015-01-28 14:53:13 +08:00
@tini9 7要兼容5,任何强制性的东西都是作死啊
raincious
2015-01-28 14:54:56 +08:00
@Actrace

然后你会发现,写着写着还不如写C++。

如果有HTTP库什么的话。
tini9
2015-01-28 15:00:13 +08:00
不过确实不如像java那样:

function array foo() {
return [];
}

写起来顺手,或者干脆学java学的彻底点,把function也去掉

public array foo() {
return [];
}


饶了一大圈,干脆回去写java算了
lyf362345
2015-01-28 15:03:22 +08:00
不知道有什么用,最多告诉调用者而已,但是注释也够了吧,真的是坑自己玩!
tini9
2015-01-28 15:06:06 +08:00
@lyf362345 对IDE智能提示很有用,有时候IDE真的推断不出来类型,对智能提醒是很大的困扰。另外,对速度有一部分提升,这样就不用在运行的过程中动态判断数据类型了
mahone3297
2015-01-28 15:27:24 +08:00
看到好虚偶人不同意。。。个人感觉,强类型,没什么不好。。。
NCE
2015-01-28 16:16:05 +08:00
关键是如何提升php4-5现有程序的效率,你可以预编译成这种形式,但绝不能让人这么写去,如果酱紫,我为什么不去写hacklang?go?
tini9
2015-01-28 16:22:52 +08:00
@NCE php是现存的唯一的无状态的解释型语言了吧,asp已经死了。php这么火不是靠的语法特色,是靠的天然热部署,天然的不需要部署
Dannytmp
2015-01-28 16:31:55 +08:00
PHP为何放弃6 ?
anewg
2015-01-28 16:51:37 +08:00
@NCE 非强制的吧,官方的态度是打算让PHP5透明升级
anewg
2015-01-28 16:52:45 +08:00
@Dannytmp 以前有打算开发6的,后面烂尾了。直奔7去了
zythum
2015-01-28 18:52:42 +08:00
应该是给IDE看的。做语法提示什么的
lincanbin
2015-01-28 19:09:01 +08:00
@Dannytmp 跟windows 9一样吧
skybr
2015-01-28 19:10:37 +08:00
IDE都认注释里的@var @return, 优化靠这步也够了, 根本不用改变语法.

说白了还是有了危机意识, 目前大站转hhvm越来越多, 而且很可能为了再提高一点性能去加上这种hacklang的声明返回类型的语法, 就算以后php能拉近和hhvm的性能, 别人跑惯了hhvm也没什么可能再去删改程序再用回php, 其实就是被hacklang倒逼兼容.


@tini9 php从来不是能热部署的, 只是大部分使用者习惯不严谨的部署php.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/166164

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX