什么';这是一个很好的IDE,可以识别PHP echo/print语句中的Javascript


What's a good IDE that will recognize Javascript inside PHP echo / print statement?

我一直在寻找一个好的PHP IDE,它可以看到echo语句中的JavaScript/html,并将其显示为代码(带有所有漂亮的颜色等)。

我试过Komodo、Netbeans和其他产品。所有这些都将echo语句显示为字符串(单色)。

PHP Designer 2007是唯一一个允许我切换语言的软件,所以我可以轻松地阅读echo中的JS,但它的功能非常有限。

Phpstorm可以很好地做到这一点,您可以选择将代码突出显示"注入"到php字符串中。例如,您可能将SQL作为字符串,或者将JavaScript或CSS作为字符串。您可以将语法高亮显示注入其中。

这是PHPstorm的一个小功能,我不得不说它是目前可用的最强大的IDE之一。

http://www.jetbrains.com/phpstorm/download/

您的代码中有很多小javascript echo's吗?如果它是一大块代码,您可以将javascript放在一个单独的.js文件中,并使用PHP来回显该文件:

$strFile = file_get_contents("/js/myjavascript.js");
if ($strFile) {
    echo $strFile;
} else {
    echo "alert('Could not load javascript.');";
}

这种方法还通过不将几种语言(以及服务器/客户端代码)混合在一个文件中来保持代码的"干净"。

我可以想象,当它在一个文件中为不同的语言应用不同的代码高亮显示时,在IDE中会是一场迪斯科。这真的是你想要的吗?

我假设您使用类似的东西:

echo "function foo()  
{ 
    var temp; ... 
}";

字符串就是字符串,被当作字符串对待。解决方法是:

PHP Code..
?>
function foo()
{
    var temp; ...
}
<?PHP
PHP Code...

在PHP标记之外编写内容会导致回声。

我倾向于同意Bondye的评论。我个人使用Netbeans,它们适用于大多数语言。如果你把代码分开,比如也许不要把Javascript内联到PHP echo中,而是试着调用一个Javascript函数,它包含在一个单独的Javascript文件中,或者在PHP之外的脚本标记中编写。在我的情况下,Netbeans将采用任何一种方式,并使事情更容易调试。

希望有帮助,祝你好运:)