Laravel學習筆記之基於PHPStorm編輯器的Laravel開發

引言

本文主要講述在PHPStorm編輯器中如何使用PHPStorm的Laravel插件和Laravel IDE Helper來開發Laravel程序,結合我的積累的一點經驗來講明使用PHPStorm編輯器來開發程序仍是很順手的,內容主要基於PHPStorm官方文檔Laravel Development using PhpStormphp

學習主題

本文主要涉及如下幾個技巧:html

  1. Composer的初始化mysql

  2. Laravel IDE Helper的安裝laravel

  3. Laravel Plugin的安裝git

  4. PHPStorm對Laravel框架的支持github

  5. PHPStorm對Blade模板引擎的支持sql

  6. 使用PHPStorm調試Laravel程序數據庫

  7. 使用PHPStorm的單元測試功能json

  8. 使用PHPStorm的數據庫功能bootstrap

一、一些準備工做

(1)、初始化composer
PHPStorm提供了composer配置功能,能夠在PHPStorm新建一個空項目,而後在空項目根目錄右鍵選擇Composer|Init Composer...,而後點擊從getcomposer.org網上下載,PHPStorm會自動下載composer.phar文件,並在項目根目錄下生成composer.json文件,速度也很快:
圖片描述
圖片描述

對於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找對應的安裝方法。
圖片描述
其實,Laravel IDE Helper就是一個第三方安裝包,安裝後會有些代碼提示等一些好處,也可選擇不安裝,固然安裝也比較簡單。安裝後須要在config/app.php裏註冊下Service Provider就行:

return array(
        // ...
        'providers' => array(
            // ...
            'Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider', // Laravel IDE helper
        ),
        // ...
    );

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了:
圖片描述
So,安裝Laravel Plugin有啥好處沒:主要就是代碼補全。針對Routes/Controllers/Views/Configuration/Services/Translations的代碼補全,比較方便而已,懶得裝也能夠不裝。舉個視圖代碼補全例子:
圖片描述
效率會高不少,並且安裝也很簡單,裝一個也無妨嘛。

二、PHPStorm對Blade模板支持

PHPStorm提供了對Blade模板語法高亮,並且還包括一些指令的補全和瀏覽,如@include/@section/@extends等等,寫代碼時很方便:
圖片描述
圖片描述

總的來講,PHPStorm對Blade模板的代碼提示和補全仍是支持的比較好的,使用很順手。

這裏,還推薦一個Laravel Live Templates for PhpStorm,安裝地址:https://github.com/koomai/php...,這個小依賴包也比較好用,建議在PHPStorm中安裝下,安裝方法和好處能夠進去看看,安裝很簡單。

三、使用Xdebug來調試Laravel程序

Xdebug是調試PHP程序的神器,尤爲在調試Laravel代碼時會很是有用。在PHPStorm中配置Xdebug也很簡單,首先看下PHP版本中是否安裝了Xdebug擴展:

php -m

[PHP Modules]
apcu
bcmath
bz2
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
ftp
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

若是沒有裝Xdebug擴展的話須要裝一下,裝完後修改下php.ini把xdebug.so前的路徑';'去掉,並重啓下PHP就行。若是你是本地開發,是MAC系統的話,能夠裝集成環境MAMP,該PHP中都有xdebug.so,不過須要使能下php.ini中xdebug擴展。

安裝好後xdebug後,須要配置下PHP:
圖片描述

使能下PHPStorm中Debug Listening:點擊Run->Start listening for PHP Debug Connections,而後點擊右上角的下三角設置下:

圖片描述

能夠選擇新建一個PHP Web Application或者PHP Script,選擇PHP Web Application的話須要配置下Server,默認本地開發而且路由爲localhost,則配置以下:

圖片描述

這裏以PHP Script舉例,以下:
圖片描述

而後點擊右上角的爬蟲圖標執行調試,而且各個變量值在調試控制檯中顯示:

圖片描述

大概聊了下在PHPStorm中配置Xdebug,無論咋樣,必定要配置好Xdebug,這在平時讀代碼尤爲Laravel源碼時會很是有用。

四、使用PHPUnit單元測試Laravel程序

首先須要在本地安裝下PHPUnit:

wget https://phar.phpunit.de/phpunit.phar
 chmod +x phpunit.phar
 sudo mv phpunit.phar /usr/local/bin/phpunit
 phpunit --version

而後在PHPStorm中配置下PHPUnit:

圖片描述

Configuration file指向本地的phpunit.xml.dist文件,該文件是用來配置phpunit的測試套件的,能夠看官網中文版的:[用 XML 配置來編排測試套件
][16],好比本人這裏的套件配置:

<?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>
        <!--<log type="coverage-text" target="php://stdout" showUncoveredFiles="true"/>-->
        <!--<log type="coverage-html" target="coverage" showUncoveredFiles="true"/>-->
        <!--<log type="coverage-clover" target="coverage.xml" showUncoveredFiles="true"/>-->
    </logging>
</phpunit>

在寫好PHPUnit測試後,能夠在終端執行phpunit命令就行,或者單獨執行某個測試類,能夠在測試類裏右鍵選擇Run xxxTest.php就行,如:
圖片描述

寫測試仍是頗有必要的,並且是必須的。PHPUnit寫測試,之後還會詳聊。

五、使用PHPStorm的Database連接Laravel程序數據庫

PHPStorm中提供了database插件,功能也比較強大,我想用過PHPStorm的應該都知道如何使用,這裏聊下一個很好用的一個功能。常常遇到這樣的一個情景:數據庫裝在數據庫服務器db.test.com中,但本地是登錄不上去的,但
在開發服務器host.company.com是能夠連接數據庫服務器的,那如何使用database來鏈接數據庫服務器呢?

能夠經過SSH tunnel來鏈接,如:
圖片描述

這裏Auth type能夠選擇Password或者Key Pair,若是你是經過密碼登陸開發服務器的,選擇Password;若是是經過密鑰登錄的,選擇Key Pair。而後在general tab中配置下數據庫服務器就OK了。

PHPStorm還提供了Remote Host插件來連接遠程服務器,點擊Tools->Deployment->Browse Remote Host就可看到,這個插件和Database同樣一樣的方便看服務器的東西,並能夠在本地修改病Upload到服務器上,而不用在Terminal中登陸到遠程服務器,在Terminal上查看修改東西。

歡迎關注Laravel-China

RightCapital招聘Laravel DevOps

相關文章
相關標籤/搜索