按照惯例依然是从百科上复制一条简介: PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具。PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化debug功能和智能HTML/CSS/JavaScript/PHP编辑、代码质量分析、版本控制集成(SVN、GIT)、调试和测试等功能。另外,它仍是跨平台。在Windows和MacOS下均可以使用。PhpStorm-让开发更智能,而不是更困难。javascript
据说phpStorm 10支持php7呃php
跨平台。java
对PHP支持refactor功能。mysql
自动生成phpdoc的注释,很是方便进行大型编程。git
内置支持Zencode。github
生成类的继承关系图,若是有一个类,屡次继承以后,能够经过这个功能查看他全部的父级关系。sql
支持代码重构,方便修改代码。数据库
拥有本地历史记录功能(local history功能)。编程
方便的部署,能够直接将代码直接upload到服务器。服务器
总之它很牛逼就是了,什么都能干
phpStorm有很是很是多而且好用的的快捷键,我下面就举一些常常用的的快捷键演示,还有一些不经常使用的就不举例了,绝对能提升你开发的效力率...
(Windows与Mac相似,只要把command
键换成ctrl
)
command + f
查找当前文件
command + r
查找替换
command + e
打开最近的文件
command + shift + o
快速查询文件
command + shift + f
关键字查找,更强大的查询器(机器很差的,最好仍是先肯定一下目录)
command + shift + r
高级替换
command + alt + b
找到当剪类的全部子类
alt + shift + c
查找最近修改的文件
alt + f7
直接查询选中的字符
ctrl + f7
文件中查询选中字符
command + 鼠标点击
跳到类或方法或变量等声明处
command + shift + tab
切换tab页文件
command + shift + +,-
展开或缩起
command + .
折叠或展开选中的代码
alt + 回车
导入包,自动修正
command + n
快事为每一个成员属性生成 getter 及 setter 方法
ctrl + i
快速生成插入魔术方法
ctrol + o
复写父类方法
command + alt + l
对当前文件进行格式化排版
command + d
复制当剪行
command + /
// 注释
command + shift + /
/ / 注释
以command + n
举个例子
我建立了一个Person
类在/Entity/
目录下,而后我设置一些私有的属性以下代码:
namespace Entity; class Person { private $sign = ''; private $name = ''; private $age = 0; private $work = ''; private $sex = '女'; }
而后我们使用command + n
在弹出来的窗口选择"PHPDoc Blocks..." 以下图:
再再弹出的窗口选择全部属性再点"OK":
namespace Entity; /** * Class Person * @package Entity */ class Person { /** * @var string */ private $sign = ''; /** * @var string */ private $name = ''; /** * @var int */ private $age = 0; /** * @var string */ private $work = ''; /** * @var string */ private $sex = '女'; }
而后它就对刚刚所选择属性加上了注释...... 是否是灰常神奇。
ok,我们继续,再次使用command + n
键选择Contructor...
弹出须要进行传参赋值的属性:
/** * Person constructor. * @param string $sign */ public function __construct($sign) { $this->sign = $sign; }
若是不选择的话将不须要对成员属性进行设置。
而后我们再来看看其余功能,好比"Implement Methods..."这个是快速生成魔术方法。
一般我们设置、获取一个成员属性时最好不要直接使用$person->name = $name
这种方式进行设置参数或取得参数值,建议是对每一个属性都开放一个 getter
跟 setter
方法,这样能够很方便得对传进或传出去的值进行处理,这就是上面我为何要把成员属性设置置为私有的缘由之一
一样的command + n
选择"Getters and Stetters" 而后选择全部属性,它就会把全部的属性设置getter
及setter
方法,这里要注意的是Person
的sign
是惟一的,不可进行修改,因此我们要把设置sign
的方法去掉。注意: 最好setter
方法设置完后返回当剪对象,这样的话我们就能够连写了而且phpStorm的提示还至关友好下面有例子:
/** * @return string */ public function getSign() { return $this->sign; } /** * @return string */ public function getName() { return $this->name; } /** * @param string $name * @return $this */ public function setName($name) { $this->name = $name; return $this; } /** * @return int */ public function getAge() { return $this->age; } /** * @param int $age * @return $this */ public function setAge($age) { $this->age = $age; return $this; } /** * @return string */ public function getWork() { return $this->work; } /** * @param string $work * @return $this */ public function setWork($work) { $this->work = $work; return $this; } /** * @var string */ private $sex = '女'; /** * @return string */ public function getSex() { return $this->sex; } /** * @param string $sex * @return $this */ public function setSex($sex) { $this->sex = $sex; return $this; }
连写的例子:
use Entity\Person; $person = new Person(); $person->setName("蛋蛋") ->setAge(17) ->setWork('student');
最后再演示一个快速复写被继承类的功能。我们新建一个Man
类,而后继承Person
类,上面的Person类缺省是女性别,因此咱们须要重写它而且加上"中国男人"。一样的使用command + n
打开快捷窗口选择 "Override Methods..." 弹出来可被复写的方法:
而后我们选择getSex
跟setSex
方法,而后肯定,在Man
方法下生成如下方法。
namespace Entity; /** * Class Man * @package Entity */ class Man extends Person { /** * @return string */ public function getSex() { return parent::getSex(); // TODO: Change the autogenerated stub } /** * @param int $sex * @return $this */ public function setSex($sex) { return parent::setSex($sex); // TODO: Change the autogenerated stub } }
我们把return parent::getSex()
跟return parent::setSex( $age )
删除掉,不须要这样,而后改为以下模式。
/** * @return string */ public function getSex() { if ( ! mb_strpos(parent::getSex(), "中国") ) return "中国".parent::getSex(); return parent::getSex(); } /** * @param int $sex * @return $this */ public function setSex($sex) { if( ! mb_strpos($sex, "中国") ) $sex = "中国".$sex; return parent::setSex($sex); }
碉堡了有木有。
看起来好多的样纸,我懒,不想讲可不能够?我就挑几个好很差?
连拉ssh 照着配就好了,很简单
composer 这个也很明了吧,很少说了,平时我们都是经过命令行来实现的
vagrant 这个phpstorm 10集成了vagrant,介于我们本身已经搭建好了本身的vagrant环境,就不使用phpstorm所集成的啦
参考: 《使用Virtual Box和Vagrant搭建开发环境》
phpStorm所集成的database工具十分强大,固然它还有单独的database工具叫作: DataGrip,固然须要独立购买,我们phpStorm有集成,就使用它好啦哈哈....(我们的PhpStorm但是花钱买的,请支持正版)
Database工具通常在右侧栏,若是没有的话搜一下就行了,多简单的事儿呀...
开始建立一个数据库链接吧...
选择如上图的那个"+"号,而后选择Data Source
数据来源,再选择数据库类型,通常我们都是使用mysql吧,此次我们试试新的,好比SQLite
选择sqlite
数据文件的地址,而后选择驱动,若是没有的话得先下载安装sqlite的驱动插件,这个很简单,在Driver下有提示,照作就是了...
我们先看一下mysql的配制吧...
mysql的也很是简单,若是须要ssh/ssl链接的话,须要在SSH/SSL选项卡上配配地址入链接密码或sshkey...
配制好了,打开选择的数据库:
上图是链接的数据库的表及表字段信息... 来演示一下查询... 点击那"QL"样的dos窗口图标会弹出一个tab页,我们能够在这里写sql语句。
我们查询User
表下的全部数据,能够看到会有至关提示,这是至关的好使啊...查询完成后在下面的Database Console
上会有显示表数据,可对它进行修改,等等操做增长数据也能够。
快捷键command + alt + l
不但对代码进行格式化,也sql语句也是很是有效的,如上图。
在"Database Console"栏上点"Output"选项卡能够查看sql语句执行的状况、记录及所消耗的时间等等信息...
command + 回车
执行sql语句或执行选中的sql语句
关于database工具的用法还有不少不少,我就不一一讲解了,你们能够本身慢慢去研究,真的很是好用
command + k
command + shift + k
关于FTP的配制,因为我不推荐使用,因此这里就很少说啦!
都到这了,那我们就说说在phpStorm上如何使用git工具吧
算了,仍是举一个例子吧,配辣么多太累了,一会我看下有没有已经配好的,若是有的话一会拉出来截个图看看就行吧,反正如今svn用得也比较少了,仍是git用得爽,分布式嘛,离线嘛,多好...关于svn -> git能够参考我以前写的一篇文章
选择CVS -> Checkout from Version Control -> Git
在弹出的窗口输入本身的git仓库信息:
注意 conle 的时间若是没有设置你的github帐号的话可能会提示你输入帐号信息,我们输入就好了。若是须要修改的话则在设置里面进行修改,我们可使用command + ,
打开"Preferences" 而后找到"Version Control"选项目的"GitHub"进行设置,还有"Git"路径。
建立分支以经过命令行进行建立,我们能够经过phpstrom的窗口进行建立,以下:
这个东西在右下角,"Git:master" 而后弹出上面窗口选择"New Branch" 而后输入新分支的名称就行了,它会自动切换到新分支下。
是否是超级简单呀...
当我们修改完代码后,我们须要把代码提交到远程分支上,使用快捷键command + k
提交至关修改后的代码,双击文件能够进行对比。在"Commit Message"写上修改的东西而后点提交,这时就把代码提交到本地分支上了。
不使用快捷键的话,可使用"CVS -> Commit Changes"提交,也会弹出下面窗口...

提交到本地分支后,我们须要把代码推到远程分支上,因此须要使用快捷键: command + shif + k
提交远程分支...

也可使用"CVS -> Git -> Push"进行提交...效果是同样的
注意svn木有 command + shift + k
这一步
分并不是常简单,只要选择须要合并的分支,而后merge就好了,以下图:
这样就合并完成,固然,若是有冲突的话会提交有冲突,并让你解决,若是没有的话就直接合并成功了...而后就能够push了......
Compare
是对合并的分支进行对比...
灰常抱歉,我电脑上木有找到相关Svn项目的代码,就很少说了...
这里讲一个javascript 的安装,使用快捷键cmd + ,
打开 Preferances
安装 JavaScript 插件
Languages & Frameworks
-> Javascript
-> Libraries
选择add须要的框架
安装symfony2插件,搜索插件,而后点install
而后重启phpStorm 就完事了....
灰色+波浪线: 变量未使用
黄色波浪线: 变量未名单词拼写问题
红色波浪线: 变量未定义
还有好多我就不一一举例了,多是由于我代码写得太好,出错的东西比较少吧...
右边栏出现红色,这点是必需要杜绝的,好的代码不该该出现红色的任何提示...一旦出现必定要立刻解决,好的代码不该该出现一个黄、红色的提示。
TODO 表示待办事件,当提交到vcs、svn或git的时候,会提示是还有未处理的事件,须要确认提交。
写得有点多了,想写的东西比较多,要不分两篇写好了?算了,我比较懒,就这样吧,等我之后想写了再写吧,谢谢阅读
其实有不少东西能够写的,我只是想偷懒而已......
拿铁味的摩卡,使用Ghost搭建我的博客
更多请访问个人我的博客:LatteCakeThe End: 2016年01月09日 下午18时许