利用PHPStorm如何开发Laravel应用详解


Posted in PHP onAugust 30, 2017

前言

相信有很多PHP程序员使用 [laravel] 创建他们的应用程序。[laravel] 是一个免费开源的PHP web应用程序框架。它基于多个Symfony 组件,提供了一个开发框架,包括authentication, routing, sessions, caching 等模块.

去年夏天, 我们介绍了 支持Blade 。blade 是Laravel的模板语言, 对艺术家友好,这个Laravel程序员的命令行工具, 可以在PhpStorm中工作. 使用 Laravel 插件 和 Laravel IDE 帮助器, 我们可以进一步扩展PhpStorm对Laravel应用的支持。下面让我们看怎么做!

安装Laravel IDE 助手

官方方式

首先确认 Composer 在我们的项目中是可用的, 我们可以使用 Composer | Add dependency… 右键菜单安装 [Laravel 5 IDE Helper Generator] 到我们的项目. 搜索 barryvdh/laravel-ide-helper,并且点击Install下载并添加到项目.

[译注]自助方式

因为我们是在项目中使用, 所以我们在项目中添加这个功能, 在 composer.json 中添加 require-dev 分支
laravel 4.* , 这里的版本应该填写 1.*

"require-dev": {
  // ...
  "barryvdh/laravel-ide-helper": "2.*"
  // ...
},

然后使用命令 composer update -vvv 来更新程序包

注册 'Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider' 服务到我们的应用, 即写入到 config/app.php 中的 provider中 , 这样在 artisan list 中便存在了ide-helper的命令, 运行 artisan ide-helper:generate, PhpStorm就会有代码完成功能,并且有Laravel的语法高亮.

PhpStorm中的Laravel插件

为了进一步提升我们的Laravel体验,我们也可以安装Laravel插件. 在 Settings (Preferences) | Plugins, 点击 Browse repositories… 按钮并搜索Laravel. Install plugin 按钮会下载并安装插件到IDE.

利用PHPStorm如何开发Laravel应用详解

重启IDE 并启用插件( Settings (Preferences) | Other Settings | Laravel Plugin | Enable Plugin for this Project). PhpStorm知道Laravel的界面做什么, 并且提供(controllers,views, routes, configuration, translations、等)的代码完成功能!

当然不只是代码自动完成,使用 Ctrl+Click (CMD+Click Mac OS X) 或者 Go To Declaration(转到定义) (Ctrl+B / CMD+B), PhpStorm 将会导航到那里, 比如配置项的声明。

关于使用 Blade 模板,Laravel 插件也可以提高体验, 比如:@section 指令的自动完成.

想了解更多吗? 查看我们的 Laravel教程,这里包含了 PhpStorm 为 Laravel 开发准备的全部东西, 包括代码自动完成,导航,自动代码检查,命令行工具支持,调试和单元测试!

还可以在composer.json的post-update-cmd中加入命令保证 helper在每次update的时候都会更新,如下:

"post-update-cmd": [
  "php artisan clear-compiled",
  "php artisan ide-helper:generate",
  "php artisan optimize"
 ],

另外,如果你的model是extend的Eloquent,这个插件还可以给项目中的model添加phpDoc,直接显示字段名,便于阅读,用法

php artisan ide-helper:models User

需要修改composer.json,在 require-dev段添加

"require-dev": {  
  "doctrine/dbal": "~2.3"
},

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

参考文章:

使用 PHPStorm 开发 Laravel 应用

Laravel Development using PhpStorm

PHP 相关文章推荐
火车头采集器3.0采集图文教程
Mar 17 PHP
PHP 木马攻击防御技巧
Jun 13 PHP
php Sql Server连接失败问题及解决办法
Aug 07 PHP
php 取得瑞年与平年的天数的代码
Aug 10 PHP
php的memcached客户端memcached
Jun 14 PHP
php mysql_real_escape_string函数用法与实例教程
Sep 30 PHP
php.ini save_handler 修改不生效的解决办法
Jul 22 PHP
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
Aug 23 PHP
使用PHP uniqid函数生成唯一ID
Nov 18 PHP
PHP精确计算功能示例
Nov 29 PHP
php 获取xml接口数据的处理方法
May 31 PHP
laravel 5.5 关闭token的3种实现方式
Oct 24 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
Aug 29 #PHP
PHP单例模式与工厂模式详解
Aug 29 #PHP
PHP迭代与递归实现无限级分类
Aug 28 #PHP
yii2中LinkPager增加总页数和总记录数的实例
Aug 28 #PHP
PHP大文件分割上传 PHP分片上传
Aug 28 #PHP
thinkphp ajaxfileupload实现异步上传图片的示例
Aug 28 #PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
Aug 28 #PHP
You might like
phpmyadmin安装时提示:Warning: require_once(./libraries/common.inc.php)错误解决办法
2011/08/18 PHP
PHP swfupload图片上传的实例代码
2013/09/30 PHP
php按单词截取字符串的方法
2015/04/07 PHP
php+jQuery递归调用POST循环请求示例
2016/10/14 PHP
浅谈ThinkPHP5.0版本和ThinkPHP3.2版本的区别
2017/06/17 PHP
thinkPHP框架实现多表查询的方法
2018/06/14 PHP
js写一个字符串转成驼峰的实例
2013/06/21 Javascript
javascript轻松实现当鼠标移开时已弹出子菜单自动消失
2013/12/29 Javascript
使用javascript实现有效时间的控制,并显示将要过期的时间
2014/01/02 Javascript
JavaScript操作XML文件之XML读取方法
2015/06/09 Javascript
javascript实现省市区三级联动下拉框菜单
2015/11/17 Javascript
jQuery拖动元素并对元素进行重新排序
2015/12/30 Javascript
JS简单去除数组中重复项的方法
2016/09/13 Javascript
IntersectionObserver API 详解篇
2016/12/11 Javascript
js保留两位小数方法总结
2018/01/31 Javascript
vue实现商品加减计算总价的实例代码
2018/08/12 Javascript
性能优化篇之Webpack构建速度优化的建议
2019/04/03 Javascript
vue+echarts实现可拖动节点的折线图(支持拖动方向和上下限的设置)
2019/04/12 Javascript
vue下使用nginx刷新页面404的问题解决
2019/08/02 Javascript
jquery实现掷骰子小游戏
2019/10/24 jQuery
angular中的post请求处理示例详解
2020/06/30 Javascript
[08:08]DOTA2-DPC中国联赛2月28日Recap集锦
2021/03/11 DOTA
Python实现Mysql数据库连接池实例详解
2017/04/11 Python
python实现kmp算法的实例代码
2019/04/03 Python
python运用sklearn实现KNN分类算法
2019/10/16 Python
Python 没有main函数的原因
2020/07/10 Python
Web前端绘制0.5像素的几种方法
2017/08/11 HTML / CSS
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
美国值得信赖的婚恋交友网站:eHarmony
2018/10/04 全球购物
JMS中Topic和Queue有什么区别
2013/05/15 面试题
毕业自我鉴定
2013/11/05 职场文书
上班睡觉检讨书
2014/01/09 职场文书
大学军训感言1500字
2014/03/09 职场文书
工商管理专业自荐信
2014/06/03 职场文书
生产实习心得体会范文
2016/01/22 职场文书
好段摘抄大全(48句)
2019/08/08 职场文书