admin 发表于 2017-11-10 22:57:33

PHPStorm-最好的PHP IDE一个神器的诸多神奇功能视频全程讲解 PHPStorm使用视频教程


PhpStorm是一个轻量级且便利的PHP IDE,其旨在供给用户效力,可深入了解用户的编码,供给智能代码补全,快速导航以及立即毛病检查。
若何文雅的利用 phpStorm 开辟工具
依照老例仍然是从百科上复制一条简介: PhpStorm 是 JetBrains 公司开辟的一款贸易的 PHP 集成开辟工具。PhpStorm可随时帮助用户对其编码停止调剂,运转单元测试大概供给可视化debug功用和智能HTML/CSS/JavaScript/PHP编辑、代码质量分析、版本控制集成(SVN、GIT)、调试和测试等功用。别的,它还是跨平台。在Windows和MacOS下都可以利用。PhpStorm-让开辟更智能,而不是更困难。
听说phpStorm 10支持php7呃
优点
跨平台。
对PHP支持refactor功用。
自动天生phpdoc的正文,很是方便停止大型编程。
内置支持Zencode。
天生类的继续关系图,倘使有一个类,屡次继续以后,可以经过这个功用检察他一切的父级关系。
支持代码重构,方便点窜代码。
具有当地历史记录功用(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 + . 折叠或展开选中的代码


data/attachment/forum/img/221503pva7624mvqvxvwqq.gif


data/attachment/forum/img/221503n01ail4a1k2vv1di.gif


data/attachment/forum/img/013945d4o5xl3rbs9nzusr.gif

自动代码[*]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..." 以下图:

data/attachment/forum/img/013946r55woh56xeo9jez8.gif

再再弹出的窗口挑选一切属性再点"OK":

data/attachment/forum/img/234936y0454ptcd46peeep.gif

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...弹出需要停止传参赋值的属性:

data/attachment/forum/img/234936w2oj2ayt5tlsul7l.gif

[*]    /**   * Person constructor.   * @param string $sign   */    public function __construct($sign)    {      $this->sign = $sign;    }复制代码
假如不挑选的话将不需要对成员属性停止设备。然后我们再来看看其他功用,比如"Implement Methods..."这个是快速天生把戏方式。

data/attachment/forum/img/013140q4sqnfvquqn3qy1z.gif

凡是我们设备、获得一个成员属性时最好不要间接利用$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..." 弹出来可被复写的方式:

data/attachment/forum/img/013140k4hv83f303ksh3lf.gif

然后我们挑选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);    }复制代码
堡垒了有木有。工具类等

data/attachment/forum/img/171650l8kzdm25000gmxf8.jpeg

看起来好多的样纸,我懒,不想讲可不成以?我就挑几个好欠好?[*]连拉ssh 照着配就行了,很简单


data/attachment/forum/img/171651ewvp3443ewpefw6x.jpeg

[*]composer 这个也很了然吧,不多说了,平常我们都是经过号令行来实现的[*]vagrant 这个phpstorm 10集成了vagrant,介于我们自己已经搭建好了自己的vagrant情况,就不利用phpstorm所集成的啦
参考: 《利用Virtual Box和Vagrant搭建开辟情况》Database 工具phpStorm所集成的database工具非常强大,固然它还有零丁的database工具叫做: DataGrip,固然需要自力采办,我们phpStorm有集成,就利用它好啦哈哈....(我们的PhpStorm可是花钱买的,请支持正版)Database工具一般在右侧栏,假如没有的话搜一下就行了,多简单的事儿呀...

data/attachment/forum/img/223052zy06kzjc0ktzhf3k.jpeg

起头建立一个数据库毗连吧...

data/attachment/forum/img/223053sp8ulv5oxll55x3u.jpeg

挑选如上图的阿谁"+"号,然后挑选Data Source数据来历,再挑选数据库范例,一般我们都是利用mysql吧,此次我们试试新的,比如SQLite

data/attachment/forum/img/223138pjj7nq2gn7jw15n2.jpeg

挑选sqlite数据文件的地址,然后挑选驱动,假如没有的话得先下载安装sqlite的驱动插件,这个很简单,在Driver下有提醒,照做就是了...我们先看一下mysql的配制吧...

data/attachment/forum/img/223140xivk113780hevkty.jpeg

mysql的也很是简单,假如需要ssh/ssl毗连的话,需要在SSH/SSL选项卡上配配地址入毗连密码或sshkey...配制好了,翻开挑选的数据库:

data/attachment/forum/img/223156b5vo0w33j3e5vpk0.jpeg

上图是毗连的数据库的表及表字段信息... 来演示一下查询... 点击那"QL"样的dos窗口图标会弹出一个tab页,我们可以在这里写sql语句。我们查询User表下的所稀有据,可以看到会有相当提醒,这是相当的好使啊...查询完成后鄙人面的Database Console上会有显现表数据,可对它停止点窜,等等操纵增加数据也可以。

data/attachment/forum/img/230508v4v715n64c09m4b4.jpeg

快速键command + alt + l不单对代码停止格式化,也sql语句也是很是有用的,如上图。在"Database Console"拦亓?"Output"选项卡可以检察sql语句履行的情况、记录及所消耗的时候等等信息...[*]command + 回车 履行sql语句或履行选中的sql语句
关于database工具的用法还有很多很多,我就不逐一讲授了,大师可以自己渐渐去研讨,真的很是好用CVS 和 Git[*]command + k[*]command + shift + k
关于FTP的配制,由于我不保举利用,所以这里就不多说啦!都到这了,那我们就说说在phpStorm上若何利用git工具吧算了,还是举一个例子吧,配辣么多太累了,一会我看下有没有已经配好的,倘使有的话一会拉出来截个图看看就行吧,归正现在svn用得也比力少了,还是git用得爽,散布式嘛,离线嘛,多好...关于svn -> git可以参考我之前写的一篇文章《将代码库从Svn迁移Git》从git办事器上把代码抓到当地挑选CVS -> Checkout from Version Control -> Git

data/attachment/forum/img/230509l5rbybru60br3u5d.jpeg

在弹出的窗口输入自己的git仓库信息:

data/attachment/forum/img/230511tfkquql73112qlj7.jpeg

留意 conle 的时候假如没有设备你的github账号的话能够会提醒你输入账号信息,我们输入就行了。假如需要点窜的话则在设备里面停止点窜,我们可以利用command + ,翻开"Preferences" 然后找到"Version Control"选项目标"GitHub"停止设备,还有"Git"途径。

data/attachment/forum/img/230512yg9jmhp4ghr99t9b.jpeg

从mster建立分支建立分支以经过号令行停止建立,我们可以经过phpstrom的窗口停止建立,以下:

data/attachment/forum/img/235139a0gf69m0z0gc0a8k.jpeg

这个工具在右下角,"Git:master" 然后弹出上面窗口挑选"New Branch" 然后输入新分支的称号就行了,它会自动切换到新分支下。能否是超级简单呀...提交接码至远程分支当我们点窜完代码后,我们需要把代码提交到远程分支上,利用快速键command + k提交相当点窜后的代码,双击文件可以停止对照。在"Commit Message"写上点窜的工具然后点提交,这时就把代码提交到当地分支上了。不利用快速键的话,可以利用"CVS -> Commit Changes"提交,也会弹出下面窗口...

data/attachment/forum/img/235139alfaft8c999zjl9t.jpeg

?提交到当地分支后,我们需要把代码推到远程分支上,所以需要利用快速键: command + shif + k提交远程分支...

data/attachment/forum/img/023456xf1e8f850fcssc5n.gif

?也可以利用"CVS -> Git -> Push"停止提交...结果是一样的留意svn木有 command + shift + k这一步合并分支分并很是简单,只要挑选需要合并的分支,然后merge就行了,以下图:

data/attachment/forum/img/023456zr5zkff5e9wdnd9w.jpeg

这样就合并完成,固然,倘使有抵触的话会提交有抵触,并让你处理,假如没有的话就间接合并成功了...然后便可以push了......Compare 是对合并的分支停止对照...利用svn...灰常抱歉,我电脑上木有找到相关Svn项目标代码,就不多说了...安装插件这里讲一个javascript 的安装,利用快速键cmd + , 翻开 Preferances安装 JavaScript 插件Languages & Frameworks -> Javascript -> Libraries

data/attachment/forum/img/235632pdoq236tssqs2q6l.jpeg

挑选add需要的框架安装symfony2插件,搜索插件,然后点install

data/attachment/forum/img/235634efefn8e0e9raln5c.jpeg

然后重启phpStorm 就完事了....留意[*]灰色+海浪线: 变量未利用[*]黄色海浪线: 变量未名单词拼写题目[*]红色海浪线: 变量未界说[*]还有好多我就不逐一举例了,能够是由于我代码写得太好,出错的工具比力少吧...
右侧栏出现红色,这点是必必要根绝的,好的代码不应当出现红色的任何提醒...一旦出现一定要顿时处理,好的代码不应当出现一个黄、红色的提醒。TODO 暗示待处事务,当提交到vcs、svn或git的时辰,会提醒是还有未处置的事务,需要确认提交。写得有点多了,想写的工具比力多,要不分两篇写好了?算了,我比力懒,就这样吧,等我今后想写了再写吧,感谢阅读实在有很多工具可以写的,我只是想偷懒而已......
**** Hidden Message *****

phpstorm php配置, phpstorm配置php环境, yii phpstorm, phpstorm git, phpstorm中文破解版
页: [1]
查看完整版本: PHPStorm-最好的PHP IDE一个神器的诸多神奇功能视频全程讲解 PHPStorm使用视频教程