使用PHPStorm编辑器开发Laravel过程讲解

使用PHPStorm编辑器开发Laravel过程讲解

摘要:本文主要讲述在PHPStorm编辑器中如何使用PHPStorm的Laravel插件和Laravel IDE Helper来开发Laravel程序,结合个人积累的一点经验来说明使用PHPStorm编辑器来开发程序还是很顺手的,内容主要基于PHPStorm官方文档Lara ...

本文主要涉及以下几个技巧:

  1. Composer的初始化

  2. Laravel IDE Helper的安装

  3. Laravel Plugin的安装

  4. PHPStorm对Laravel框架的支持

  5. PHPStorm对Blade模板引擎的支持

  6. 使用PHPStorm调试Laravel程序

  7. 使用PHPStorm的单元测试功能

  8. 使用PHPStorm的数据库功能

1、一些准备工作

(1)、初始化composer
PHPStorm提供了composer配置功能,可以在PHPStorm新建一个空项目,然后在空项目根目录右键选择Composer|Init Composer...,然后点击从getcomposer.org网上下载,PHPStorm会自动下载composer.phar文件,并在项目根目录下生成composer.json文件,速度也很快:

image

image

对于composer.json文件中数组key字段值可以在Composer官网上查找相关解释,包括重要的requirerequire-dev字段解释。
(2)、安装Laravel IDE Helper
安装也很简单,还是在项目根目录右键找到Composer选择Add Dependancy...,搜索laravel-ide-helper选择安装就行,如果composer.json文件中"minimum-stability":"stable"那就必须要安装个稳定版的,我这里选择v2.1.2稳定版。安装后就会在根目录下自动生成一个vendor文件夹,该文件夹存放各种依赖包。当然也可直接在composer.json里添加上require字段值及对应的laravel-ide-helper值,再php composer.phar composer.json update就行,具体可以去packagist.org里去搜laravel-ide-helper找对应的安装方法。

image

其实,Laravel IDE Helper就是一个第三方安装包,安装后会有些代码提示等一些好处,也可选择不安装,当然安装也比较简单。安装后需要在config/app.php里注册下Service Provider就行:

<pre class="hljs phptoolbar:false;toolbar:false;" style="margin: 0px; padding: 2px; -webkit-tap-highlight-color: transparent; white-space: pre-wrap; overflow-wrap: break-word; background: rgb(63, 63, 63); border-radius: 3px; text-align: left; color: rgb(220, 220, 220); text-transform: none; line-height: 1.4; text-indent: 0px; letter-spacing: normal; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 13px; font-style: normal; font-weight: normal; word-spacing: 0px; display: block; box-sizing: inherit; orphans: 2; widows: 2; font-variant-ligatures: normal; font-variant-caps: normal; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;"> return array( // ...
'providers' => array( // ...
'Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider', // Laravel IDE helper
), // ...
);</pre>

Laracasts官网上有一个有关Laravel Ide Helper的视频,可以看下,PHPStorm's Laravel Facades Issue

(3)、安装Laravel Plugin
选择Preference或者Command + ,,选择下方的Browse repositories...浏览插件仓库,并选择安装Laravel Plugin,并重启PHPStorm就行,最后在Preference|Other Settings|Laravel Plugin里选择enable plugin for this project再重启下PHPStorm就OK了:

image

So,安装Laravel Plugin有啥好处没:主要就是代码补全。针对Routes/Controllers/Views/Configuration/Services/Translations的代码补全,比较方便而已,懒得装也可以不装。举个视图代码补全例子:

image

效率会高很多,而且安装也很简单,装一个也无妨嘛。

2、PHPStorm对Blade模板支持

PHPStorm提供了对Blade模板语法高亮,而且还包括一些指令的补全和浏览,如@include/@section/@extends等等,写代码时很方便:

image

image

总的来说,PHPStorm对Blade模板的代码提示和补全还是支持的比较好的,使用很顺手。

这里,还推荐一个Laravel Live Templates for PhpStorm,安装地址:https://github.com/koomai/php...,这个小依赖包也比较好用,建议在PHPStorm中安装下,安装方法和好处可以进去看看,安装很简单。

3、使用Xdebug来调试Laravel程序

Xdebug是调试PHP程序的神器,尤其在调试Laravel代码时会非常有用。在PHPStorm中配置Xdebug也很简单,首先看下PHP版本中是否安装了Xdebug扩展:

<pre class="hljs scsstoolbar:false;toolbar:false;" style="margin: 0px; padding: 2px; -webkit-tap-highlight-color: transparent; white-space: pre-wrap; overflow-wrap: break-word; background: rgb(63, 63, 63); border-radius: 3px; text-align: left; color: rgb(220, 220, 220); text-transform: none; line-height: 1.4; text-indent: 0px; letter-spacing: normal; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 13px; font-style: normal; font-weight: normal; word-spacing: 0px; display: block; box-sizing: inherit; orphans: 2; widows: 2; font-variant-ligatures: normal; font-variant-caps: normal; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">php -m[PHP Modules]apcu
bcmath
bz2
calendar
Core
ctype
curl
date
dom
exif
fileinfofilterftp
gd
gettext
gmp
hash
http
iconv
imap
intl
json
ldap
libxml
mbstring
mcrypt
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
propro
raphf
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
Zend OPcache
zip
zlib[Zend Modules]Xdebug
Zend OPcache</pre>

如果没有装Xdebug扩展的话需要装一下,装完后修改下php.ini把xdebug.so前的路径';'去掉,并重启下PHP就行。如果你是本地开发,是MAC系统的话,可以装集成环境MAMP,该PHP中都有xdebug.so,不过需要使能下php.ini中xdebug扩展。

安装好后xdebug后,需要配置下PHP:


image

使能下PHPStorm中Debug Listening:点击Run->Start listening for PHP Debug Connections,然后点击右上角的下三角设置下:

image

可以选择新建一个PHP Web Application或者PHP Script,选择PHP Web Application的话需要配置下Server,默认本地开发并且路由为localhost,则配置如下:

image

这里以PHP Script举例,如下:


image

然后点击右上角的爬虫图标执行调试,并且各个变量值在调试控制台中显示:

image

大概聊了下在PHPStorm中配置Xdebug,不管咋样,一定要配置好Xdebug,这在平时读代码尤其Laravel源码时会非常有用。

4、使用PHPUnit单元测试Laravel程序

首先需要在本地安装下PHPUnit:

<pre class="hljs groovytoolbar:false;toolbar:false;" style="margin: 0px; padding: 2px; -webkit-tap-highlight-color: transparent; white-space: pre-wrap; overflow-wrap: break-word; background: rgb(63, 63, 63); border-radius: 3px; text-align: left; color: rgb(220, 220, 220); text-transform: none; line-height: 1.4; text-indent: 0px; letter-spacing: normal; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 13px; font-style: normal; font-weight: normal; word-spacing: 0px; display: block; box-sizing: inherit; orphans: 2; widows: 2; font-variant-ligatures: normal; font-variant-caps: normal; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;"> wget https://phar.phpunit.de/phpunit.phar
chmod +x phpunit.phar
sudo mv phpunit.phar /usr/local/bin/phpunit
phpunit --version</pre>

然后在PHPStorm中配置下PHPUnit:

image

Configuration file指向本地的phpunit.xml.dist文件,该文件是用来配置phpunit的测试套件的,可以看官网中文版的:[用 XML 配置来编排测试套件][16],比如本人这里的套件配置:

<pre class="hljs xmltoolbar:false;toolbar:false;" style="margin: 0px; padding: 2px; -webkit-tap-highlight-color: transparent; white-space: pre-wrap; overflow-wrap: break-word; background: rgb(63, 63, 63); border-radius: 3px; text-align: left; color: rgb(220, 220, 220); text-transform: none; line-height: 1.4; text-indent: 0px; letter-spacing: normal; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 13px; font-style: normal; font-weight: normal; word-spacing: 0px; display: block; box-sizing: inherit; orphans: 2; widows: 2; font-variant-ligatures: normal; font-variant-caps: normal; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;"><?xml version="1.0" encoding="UTF-8"?><phpunit backupGlobals="false"
backupStaticAttributes="false"
bootstrap="vendor/autoload.php"
colors="true"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="false"
syntaxCheck="true"
verbose="true">
<testsuites>
<testsuite name="flysystem/tests">
<directory suffix=".php">./tests/</directory>
</testsuite>
</testsuites>
<filter>
<whitelist>
<directory suffix=".php">./src/</directory>
</whitelist>
</filter>
<listeners>
<listener class="Mockery\Adapter\Phpunit\TestListener" file="./vendor/mockery/mockery/library/Mockery/Adapter/Phpunit/TestListener.php"></listener>
</listeners>
<logging>



</logging></phpunit></pre>

在写好PHPUnit测试后,可以在终端执行phpunit命令就行,或者单独执行某个测试类,可以在测试类里右键选择Run xxxTest.php就行,如:


image

写测试还是很有必要的,而且是必须的。PHPUnit写测试,以后还会详聊。

5、使用PHPStorm的Database链接Laravel程序数据库

PHPStorm中提供了database插件,功能也比较强大,我想用过PHPStorm的应该都知道如何使用,这里聊下一个很好用的一个功能。经常遇到这样的一个情景:数据库装在数据库服务器db.test.com中,但本地是登陆不上去的,但在开发服务器host.company.com是可以链接数据库服务器的,那如何使用database来连接数据库服务器呢?

可以通过SSH tunnel来连接,如:


image

这里Auth type可以选择Password或者Key Pair,如果你是通过密码登录开发服务器的,选择Password;如果是通过密钥登陆的,选择Key Pair。然后在general tab中配置下数据库服务器就OK了。

PHPStorm还提供了Remote Host插件来链接远程服务器,点击Tools->Deployment->Browse Remote Host就可看到,这个插件和Database一样同样的方便看服务器的东西,并可以在本地修改病Upload到服务器上,而不用在Terminal中登录到远程服务器,在Terminal上查看修改东西。

以上就是使用PHPStorm编辑器开发Laravel过程讲解的详细内容,更多请关注php中文网其它相关文章!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,214评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,307评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,543评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,221评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,224评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,007评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,313评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,956评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,441评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,925评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,018评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,685评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,234评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,240评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,464评论 1 261
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,467评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,762评论 2 345