如何优雅的使用 phpStorm 开发工具

   2016-08-30 0
核心提示:按照惯例依然是从百科上复制一条简介: PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具。PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化debug功能和智能HTML/CSS/JavaScript/PHP编辑、代码质量分析、版本控制集成(SVN、

按照惯例依然是从百科上复制一条简介: PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具。PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化debug功能和智能HTML/CSS/JavaScript/PHP编辑、代码质量分析、版本控制集成(SVN、GIT)、调试和测试等功能。另外,它还是跨平台。在Windows和MacOS下都可以使用。PhpStorm-让开发更智能,而不是更困难。

如何优雅的使用 phpStorm 开发工具

听说phpStorm 10支持php7呃

优点

  1. 跨平台。
  2. 对PHP支持refactor功能。
  3. 自动生成phpdoc的注释,非常方便进行大型编程。
  4. 内置支持Zencode。
  5. 生成类的继承关系图,如果有一个类,多次继承之后,可以通过这个功能查看他所有的父级关系。
  6. 支持代码重构,方便修改代码。
  7. 拥有本地历史记录功能(local history功能)。
  8. 方便的部署,可以直接将代码直接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 + . 折叠或展开选中的代码

如何优雅的使用 phpStorm 开发工具

如何优雅的使用 phpStorm 开发工具

如何优雅的使用 phpStorm 开发工具

自动代码

  • 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..." 如下图:

如何优雅的使用 phpStorm 开发工具

再再弹出的窗口选择所有属性再点"OK":

如何优雅的使用 phpStorm 开发工具

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

如何优雅的使用 phpStorm 开发工具

    /**
     * Person constructor.
     * @param string $sign
     */
    public function __construct($sign)
    {
        $this->sign = $sign;
    }

如果不选择的话将不需要对成员属性进行设置。

然后咱们再来看看其他功能,比如"Implement Methods..."这个是快速生成魔术方法。

如何优雅的使用 phpStorm 开发工具

通常咱们设置、获取一个成员属性时最好不要直接使用 $person->name = $name 这种方式进行设置参数或取得参数值, 建议是对每个属性都开放一个 gettersetter 方法,这样可以很方便得对传进或传出去的值进行处理,这就是上面我为什么要把成员属性设置置为私有的原因之一

同样的 command + n 选择"Getters and Stetters" 然后选择所有属性,它就会把所有的属性设置 gettersetter 方法,这里要注意的是 Personsign 是唯一的,不可进行修改,所以咱们要把设置 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..." 弹出来可被复写的方法:

如何优雅的使用 phpStorm 开发工具

然后咱们选择 getSexsetSex 方法,然后确定,在 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);
    }

碉堡了有木有。

工具类等

如何优雅的使用 phpStorm 开发工具

看起来好多的样纸,我懒,不想讲可不可以?我就挑几个好不好?

  • 连拉ssh 照着配就行了,很简单

如何优雅的使用 phpStorm 开发工具

  • composer 这个也很明了吧,不多说了,平时咱们都是通过命令行来实现的
  • vagrant 这个phpstorm 10集成了vagrant,介于咱们自己已经搭建好了自己的vagrant环境,就不使用phpstorm所集成的啦

参考: 《使用Virtual Box和Vagrant搭建开发环境》

Database 工具

phpStorm所集成的database工具十分强大,当然它还有单独的database工具叫做: DataGrip ,当然需要独立购买,咱们phpStorm有集成,就使用它好啦哈哈....(咱们的PhpStorm可是花钱买的,请支持正版)

Database工具一般在右侧栏,如果没有的话搜一下就好了,多简单的事儿呀...

如何优雅的使用 phpStorm 开发工具

开始创建一个数据库连接吧...

如何优雅的使用 phpStorm 开发工具

选择如上图的那个"+"号,然后选择 Data Source 数据来源,再选择数据库类型,一般咱们都是使用mysql吧,这次咱们试试新的,比如 SQLite

如何优雅的使用 phpStorm 开发工具

选择 sqlite 数据文件的地址,然后选择驱动,如果没有的话得先下载安装sqlite的驱动插件,这个很简单,在Driver下有提示,照做就是了...

咱们先看一下mysql的配制吧...

如何优雅的使用 phpStorm 开发工具

mysql的也非常简单,如果需要ssh/ssl连接的话,需要在SSH/SSL选项卡上配配地址入连接密码或sshkey...

配制好了,打开选择的数据库:

如何优雅的使用 phpStorm 开发工具

上图是连接的数据库的表及表字段信息... 来演示一下查询... 点击那"QL"样的dos窗口图标会弹出一个tab页,咱们可以在这里写sql语句。

如何优雅的使用 phpStorm 开发工具

咱们查询 User 表下的所有数据,可以看到会有相当提示,这是相当的好使啊...查询完成后在下面的 Database Console 上会有显示表数据,可对它进行修改,等等操作增加数据也可以。

如何优雅的使用 phpStorm 开发工具

快捷键 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

如何优雅的使用 phpStorm 开发工具

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

如何优雅的使用 phpStorm 开发工具

注意 conle 的时间如果没有设置你的github账号的话可能会提示你输入账号信息,咱们输入就行了。如果需要修改的话则在设置里面进行修改,咱们可以使用 command + , 打开"Preferences" 然后找到"Version Control"选项目的"GitHub"进行设置,还有"Git"路径。

如何优雅的使用 phpStorm 开发工具

从mster创建分支

创建分支以通过命令行进行创建,咱们可以通过phpstrom的窗口进行创建,如下:

如何优雅的使用 phpStorm 开发工具

这个东西在右下角,"Git:master" 然后弹出上面窗口选择"New Branch" 然后输入新分支的名称就好了,它会自动切换到新分支下。

是不是超级简单呀...

提交代码至远程分支

当咱们修改完代码后,咱们需要把代码提交到远程分支上,使用快捷键 command + k 提交相当修改后的代码,双击文件可以进行对比。在"Commit Message"写上修改的东西然后点提交,这时就把代码提交到本地分支上了。

不使用快捷键的话,可以使用"CVS -> Commit Changes"提交,也会弹出下面窗口...

如何优雅的使用 phpStorm 开发工具 ?

提交到本地分支后,咱们需要把代码推到远程分支上,所以需要使用快捷键: command + shif + k 提交远程分支...

如何优雅的使用 phpStorm 开发工具 ?

也可以使用"CVS -> Git -> Push"进行提交...效果是一样的

注意svn木有 command + shift + k 这一步

合并分支

分并非常简单,只要选择需要合并的分支,然后merge就行了,如下图:

如何优雅的使用 phpStorm 开发工具

这样就合并完成,当然,如果有冲突的话会提交有冲突,并让你解决,如果没有的话就直接合并成功了...然后就可以push了......

Compare 是对合并的分支进行对比...

使用svn...

灰常抱歉,我电脑上木有找到相关Svn项目的代码,就不多说了...

安装插件

这里讲一个javascript 的安装,使用快捷键 cmd + , 打开 Preferances

安装 JavaScript 插件

Languages & Frameworks -> Javascript -> Libraries 如何优雅的使用 phpStorm 开发工具

选择add需要的框架

安装symfony2插件,搜索插件,然后点install

如何优雅的使用 phpStorm 开发工具

然后重启phpStorm 就完事了....

注意

  • 灰色+波浪线: 变量未使用
  • 黄色波浪线: 变量未名单词拼写问题
  • 红色波浪线: 变量未定义
  • 还有好多我就不一一举例了,可能是因为我代码写得太好,出错的东西比较少吧...

右边栏出现红色,这点是必须要杜绝的,好的代码不应该出现红色的任何提示...一旦出现一定要马上解决,好的代码不应该出现一个黄、红色的提示。

TODO 表示待办事件,当提交到vcs、svn或git的时候,会提示是还有未处理的事件,需要确认提交。

写得有点多了,想写的东西比较多,要不分两篇写好了?算了,我比较懒,就这样吧,等我以后想写了再写吧,谢谢阅读

其实有很多东西可以写的,我只是想偷懒而已......

The End: 2016年01月09日 下午18时许

 
标签: PhpStorm 数据库
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • PHP 设置调试工具XDebug PHPStorm IDE
    PHP 设置调试工具XDebug PHPStorm IDE
    先下载PHP扩展Xdebughttps://xdebug.org, 可以复制自己的phpinfo粘贴到https://xdebug.org/wizard.php中, 会生成需要下载的版本, php.ini的设置语句.下载好之后放入php目录的ext文件夹中, 然后设置php.ini, 在最后加上zend_extension = C:\path\php\ext\php_x
  • PHPStorm+Xdebug断点调试PHP
    PHPStorm+Xdebug断点调试PHP
    前言:何为DEBUG?相信很多程序员都知道debug这个单词,也明白它的意思,但是对于这词的由来,恐怕少有人知道。关于debug的由来,要追溯到1937年。1937年,美国青年霍德华.艾肯找到IBM公司为其投资200万美元研制计算机,第一台成品艾肯把它取名为:马克1号(m
  • PhpStorm 2017.1 EAP 171.2272 发布
    PhpStorm 2017.1 EAP 171.2272 发布
    PhpStorm 2017.1 EAP 171.2272发布了。PHPStorm 是 JetBrains 公司开发的一个轻量级且便捷的PHP IDE,其旨在提供用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查。如果你之前已经安装了2017.1phpStorm EAP (171.2152),你很快
    02-05 PhpStorm
  • Mac PHPStorm 使用心得
    PHPStorm 是什么?「 PHPStorm 」 是一个轻量级且便捷的 PHP IDE。其旨在提供用户效率、可深刻理解用户的编码、提供智能代码补全、快速导航以及即时错误检查。PHPStorm 使用心得 (一)全局搜索(command + shift + F)显示类中的方法 (command + 7)函数追踪
  • [实践OK]使用WebStorm/Phpstorm实现remote host
    主要是设置自动保存到远程这个选项:勾选 [V]Tools-deployment-Automatic UploadPhpStorm Save and Upload on ctrl+s, 'Tools - Deployment-config' mark as default serve...Just set server configuration on 'Tools - Deployment-config' mark as default
  • PhpStorm v2016.3发布,工具框架更新,PHP编辑新体验!
    PhpStorm v2016.3发布,工具框架更新,PHP编辑
    下载最新版PhpStorm试用 工具和框架 Remote Interpreters中支持Docker 加入Docker,在PhpStorm中可以添加远程PHP解释器。 PHPSpec 支持 2016.3版本中加入PHPSpec支持。 PHPUnit, Behat, PHPSpec自动识别和配置 现在将会收到提示,建议自动配置PHPUnit, Behat,
    11-10 PhpStormPHP
  • Phpstorm配置phpunit对php进行单元测试
    Phpstorm配置phpunit对php进行单元测试
    在 phpstorm 中配置 php 项目的单元测试,项目使用 Composer 进行管理,为了避免在项目中直接引入 phpunit 相关代码包,使项目的 vendor 目录变得臃肿,这里采用全局安装方式安装了 phpunit 代码包。 composer global require phpunit/phpunit=5.0.* 安装完成
  • 如何修改 PhpStorm 預設的 Class Template?
    如何修改 PhpStorm 預設的 Class Template?
    當使用 PhpStorm 建立 class 時,預設會產生 Created by PhpStorm 的註解,並包含 作者 、 日期 、 時間 等資訊,有的人喜歡,有的人不喜歡,若你不希望每次建立 class 時都有這個檔頭,可以自行修改;除此之外,在 PHP 7 為了讓強行別檢查發揮作用,我們會在
    10-07 PhpStormPHP
  • Mac OS X下PhpStorm+MAMP PRO+Xdebug+FireFox集成开发和断点调试环境配置
    Mac OS X下PhpStorm+MAMP PRO+Xdebug+FireFox集
    一、环境及软件1、macbook pro2、Phpstorm3、MAMP PRO4、FireFox二、环境搭建1、PhpStorm导入项目下载PhpStorm并安装,网上随便找个注册码即可破解,安装后打开界面选择ToolBar → VCS → Checkout from Version Control → Git,填写Git Repository URL,选
  • 远程连接MySQL以及PHPStorm远程开发你的php项目
    远程连接MySQL以及PHPStorm远程开发你的php项目
    在上一篇博文中介绍了如何在完整地搭建LAMP环境。其中提到了新建一个可以在任意IP地址远程连接MySQL的用户,今天这篇博文就详细介绍下如何在你的电脑上远程连接mysql,并且介绍如何用phpstorm来远程开发你的php项目。 我的开发环境是MAC,所以我这篇博文里面
点击排行