PHP7 PhpStorm 的语言支持
PHP7 language support for PhpStorm
我知道 PHP7 尚未发布,但我想开始尝试,为此我希望继续使用 PhpStorm。问题自然是它还没有语言支持。
我编译了 PHP7 源代码并将其作为解释器添加到 PhpStorm,令人惊讶的是它接受了,但这对语言级别没有影响。所以我猜解释器是用来调试的,IDE 使用它自己的解析器来调试代码。
有没有人找到方法让 PHP7 支持进入 IDE?即使它是世界上最混乱的解决方案,也足够了。
PhpStorm 的当前版本无法做到这一点——IDE 必须原生支持它。
仅在 v10 中支持 PHP7(例如,current roadmap -- no need to support something that is still work in progress, especially since v10 will be released 接近 PHP7 目标日期时未提及 v9)。
更新(2015 年 5 月 21 日):
根据今天的票证,很可能 PHP PhpStorm v9 中实际上会添加对 7 的支持。
更新(2015 年 5 月 22 日):
主票: https://youtrack.jetbrains.com/issue/WI-27468(查看链接的票以获得特定功能)。
更新(2015 年 8 月 7 日):
PhpStorm v9 已发布,具有非常基本的 PHP7 支持。
I have compiled the PHP7 source and added it as an interpreter to PhpStorm, which surprisingly it accepted, however this made no impact on the language level. So my guess is the interpreter is for debugging and the IDE uses its own parser to debug code.
一般来说 -- 你在这里是正确的。
Interpreter 用于执行和调试本地(或通过 SSH 远程)脚本和其他需要指定 php 可执行文件(例如 PHP 单元测试等)的外部内容。如果它用于为您的页面提供服务,它也会被内置的简单 Web 服务器使用。
同时特定语言级别(5.4、5.5、5.6 等)单独设置,需要 IDE 了解此类新的 constructs/syntax 等,这意味着必须先对其进行编码(因为 IDE 有自己的 PHP parser/lexer).
我知道 PHP7 尚未发布,但我想开始尝试,为此我希望继续使用 PhpStorm。问题自然是它还没有语言支持。
我编译了 PHP7 源代码并将其作为解释器添加到 PhpStorm,令人惊讶的是它接受了,但这对语言级别没有影响。所以我猜解释器是用来调试的,IDE 使用它自己的解析器来调试代码。
有没有人找到方法让 PHP7 支持进入 IDE?即使它是世界上最混乱的解决方案,也足够了。
PhpStorm 的当前版本无法做到这一点——IDE 必须原生支持它。
仅在 v10 中支持 PHP7(例如,current roadmap -- no need to support something that is still work in progress, especially since v10 will be released 接近 PHP7 目标日期时未提及 v9)。
更新(2015 年 5 月 21 日):
根据今天的票证,很可能 PHP PhpStorm v9 中实际上会添加对 7 的支持。
更新(2015 年 5 月 22 日):
主票: https://youtrack.jetbrains.com/issue/WI-27468(查看链接的票以获得特定功能)。
更新(2015 年 8 月 7 日):
PhpStorm v9 已发布,具有非常基本的 PHP7 支持。
I have compiled the PHP7 source and added it as an interpreter to PhpStorm, which surprisingly it accepted, however this made no impact on the language level. So my guess is the interpreter is for debugging and the IDE uses its own parser to debug code.
一般来说 -- 你在这里是正确的。
Interpreter 用于执行和调试本地(或通过 SSH 远程)脚本和其他需要指定 php 可执行文件(例如 PHP 单元测试等)的外部内容。如果它用于为您的页面提供服务,它也会被内置的简单 Web 服务器使用。
同时特定语言级别(5.4、5.5、5.6 等)单独设置,需要 IDE 了解此类新的 constructs/syntax 等,这意味着必须先对其进行编码(因为 IDE 有自己的 PHP parser/lexer).