在使用notepad ++和sublime编写许多快乐的岁月后,我被建议给PHP IDE一个机会.我正在尝试phpStorm,看起来不错.代码完成和文档是一个很好的功能,但是当使用魔术方法时,对我来说并不奏效.是否有工作让phpStorm了解魔术方法中发生了什么?
我们的情况是这样的:
abstract class a {
public static function __callStatic($method,$args)
{
if(strpos($method,"get_by_") === 0)
{
//do stuff
} elseif(strpos($method,"get_first_by_") === 0) {
//do stuff
} elseif($method == "get_all") {
//do stuff
}
}
}
class b extends a {
// some more stuff
}
b::get_by_user_id(27);
b::get_first_by_id(156);
b::get_all();
Run Code Online (Sandbox Code Playgroud)
神奇的callStatic方法允许我们通过构成函数调用的一个或多个参数来获取对象的集合.
我看到在这些情况下有一个@method语句可用,但phpStorm只是获取了这些语句中的第一个.此外,我只能将返回类型设置为混合,因为我更愿意将其设置为调用它的任何类(在我的示例中为b).
非常感谢任何想法或建议,谢谢.
有没有办法提示WebIDE变量有某种类型?我必须迭代一个对象数组,并且没有可用的自动完成.这有助于ZendStudio:
/* @var ClassName $object */
Run Code Online (Sandbox Code Playgroud)
我知道JetBrains中有一个声明一个对象数组的功能:
/**
* @return ClassName[]
*/
Run Code Online (Sandbox Code Playgroud)
但这仅适用于函数的返回类型.
这可能是一个愚蠢的问题,但我找不到在项目树(PhpStorm IDE)中刷新文件夹内容的选项.这(非常基本)功能是否缺失?
我知道,该内容会自动刷新,但在某些类型的文件夹中,文件生成和更改通常不起作用.
我有以下问题:phpstorm不识别jquery方法,我看到了这里和那里

未解决的函数或方法$()
这有点困扰我,但最后我试图用File-> Settings-> JavaScript-> Libraries摆脱它,并添加jquery作为全局/项目.
我的库设置如下所示:
但是没有改变什么.我仍然看到那些讨厌的通知.有谁知道怎么摆脱它们?
我用的是PhpStorm.我想制作代码片段,然后为它们分配快捷方式.我可以在NetBeans中完成它,但在PhpStorm中我不知道如何制作它们.
例如,要添加console.log();NetBeans,我只输入con + space.con是我定义的快捷方式.
我刚刚下载了新的PHPStorm EAP,并注意到了这个截图:

我非常喜欢它.事情是,我找不到任何选项让我的安装看起来像这样.我知道配色方案,但AFAIK只会改变文本编辑器的颜色.如何使我的安装看起来像那样?(截图来自EAP网站).
如何使用REST客户端(例如PHPStorm或POSTman内置的客户端)与XDebug一起使用?
在我目前的XDebug设置中,使用PHPStorm和Bookmarklet提供了我能够在Chrome和Firefox中使用它 - 但是当我尝试使用POSTman或任何其他REST客户端时,我无法弄清楚如何开始吧.
干杯.
我有两台使用PhpStorm的不同机器.一个功能启用,我可以选择一个text,按下'它将成为'text':

然而另一个将删除文本:

我忘记了如何设置它.我在哪里可以启用此功能?
Ctrl+ 在sublime中D执行find_under_expand命令.这基本上搜索了已经选择的文本的下一次出现并选中它,因此当我编辑时,它同时在两个地方进行编辑.我目前正在尝试迁移到IDEA编辑器(例如WebStorm,PHPStorm,PyCharm等),但是在这个IDE中还没有找到类似这个命令的东西.