纠错/更新中....
同时打开多个项目
- 将多个项目放到同一个目录下,比如
work
, 然后用PHPStorm打开work
即可 - 打开
设置-Directories
-Add content root
, 添加多个项目
不推荐同时打开多个项目,IDE本身会为打开的项目建立索引,打开项目越多,编辑器就会变的越慢。推荐每次只打开一个项目,通过最近打开的项目切换。
设置版本控制
打开设置
->Version Control
, 把当前打开的项目添加进去。
快捷键
常用快捷键:
- 删除整行 ⌘ + delete
- 复制光标所在行/选中的块 ⌘ + d
- 查找文件 按两下 shift, search everywhere
- 查找类 ⌘+o
- 移除无用的use ^⌥O
- 格式化代码 ⌥⌘L
- 回到光标上一次的位置 ⌘[ 这个快捷键在追踪代码的时候很有用,点进去一个方法,看完了再回到调用这个方法的地方。
- 快速跳转到行 ⌘L
- 定位当前文件所在目录 ⌥V
宏
快速移除无用的use
,代码格式化,保存修改,一键搞定? 好吧,来录制个宏。
-
Edit
-Macros
-Start macro recording
此时右下角会提示已经开始录制 - 依次按下(或者点选) ^⌥O(优化use) ⌥⌘L(格式化代码) ⌘S(保存)
-
Edit
-Macros
-Stop macro recording
结束录制,自己起个名字,比如My Save - 移除原来的保存快捷键(⌘S),改为其他的(比如⌃S),
设置
-Keymap
-Main Menu
-File
-Save All
右键移除⌘S,添加快捷键 ⌃S。 - 给My Save添加快捷键 ⌘S,
设置
-Keymap
-Main Menu
-Edit
-Macros
-My Save
, 右键添加快捷键 ⌘S
此时修改完文件只需要正常按⌘S保存即可执行三条命令,格式化代码、优化use、保存。
Git相关
代码被他人修改了,无端背锅?不存在的。 打开被怀疑的文件,在行号附近点右键,点Annotate
, 就可以看到每一行的修改记录了。如果Annotate
为灰色不可点的状态,请先设置好git。也可以在命令行执行git blame {file}
查看。
快速diff当前修改的文件和版本库里的代码默认没有快捷键,依次找到 设置
-Keymap
-Main Menu
-VCS
-Git
- Compare with the Same Repository Version
,右键添加一个自己的快捷键(我设置的是 ⌥⌘K) ,这个快捷键个人感觉非常实用,每次改半天文件,提交之前看一下改了哪些地方,有没有忘记把debug代码删除。
快速回退修改,对应 git checkout {file}
, 编辑器默认没有设置快捷键,依次找到 设置
-Keymap
-Main Menu
-VCS
-Git
- Revert
,右键添加一个自己的快捷键(我设置的是 ⌥⌘Z),快速还原所有修改。 在查bug的时候有用,打了很多log,查到问题后,所有文件还原为版本库里的状态,只留着出问题的文件。
Live Template
设置一个活动模板,可以快速生成代码,如下图,在页面输入prisf,敲Tab或者回车,自动生成一个私有的静态方法,光标自动定位到第一个用标注的位置,当前第一步要输入方法名,然后回车,光标自动跳转到第二个位置 $PARAMETERS$ 。
自己添加的活动模板,一定要选择PHP环境,否则在 .php 结尾的文件中会不生效,避免其他语言混淆。

单步调试
不同版本的单步调试设置略有不同,这里按照2018.2版本的PHPSTORM来讲。
第一步先添加一个设置如下图:

第二步 选择添加一个PHP WEB Page

第三步 设置监听端口

第四步 安装php-xdebug扩展并启用,设置如下
1 [xdebug]
2 zend_extension=/usr/local/Cellar/php/7.2.4/pecl/20170718/xdebug.so
3 xdebug.remote_enable = On
4 xdebug.remote_handler = dbgp
5 xdebug.remote_host= localhost
6 xdebug.remote_port = 9001
7 xdebug.idekey = PHPSTORM
第五步 设置断点,开始调试(下图箭头位置),如果顺利的话,打开浏览器会自动跳转回IDE,并看到如下调试信息。

其他
文件对比
在顶部,打开的文件上右键,Split vertically,文件会变成两份,左右两栏,方便对比修改。
全文复制一个文件,在编辑器里找到想要对比的文件,在编辑区域中间右键 Compare with clipboard
列选择模式
这是一个很有用的功能,在编辑区域右键 Column Selection Mode
, 此时再选中文字是以列进行的,很方便处理一些文字。用完记得关掉,否则粘贴代码会有问题。
网友评论