利用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 相关文章推荐
定制404错误页面,并发信给管理员的程序
Oct 09 PHP
收集的二十一个实用便利的PHP函数代码
Apr 22 PHP
php+jquery编码方面的一些心得(utf-8 gb2312)
Oct 12 PHP
PHP register_shutdown_function函数的深入解析
Jun 03 PHP
phpmyadmin打开很慢的解决方法
Apr 21 PHP
让CodeIgniter的ellipsize()支持中文截断的方法
Jun 12 PHP
linux中cd命令使用详解
Jan 08 PHP
php模拟post提交数据的方法
Feb 12 PHP
php mysql实现mysql_select_db选择数据库
Dec 30 PHP
php中str_pad()函数用法分析
Mar 28 PHP
PHP实现的简单AES加密解密算法实例
May 29 PHP
PHP数据库操作二:memcache用法分析
Aug 16 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
基于curl数据采集之正则处理函数get_matches的使用
2013/04/28 PHP
php中通用的excel导出方法实例
2017/12/30 PHP
js querySelector和getElementById通过id获取元素的区别
2012/04/20 Javascript
JS添加删除一组文本框并对输入信息加以验证判断其正确性
2013/04/11 Javascript
使用js操作cookie的一点小收获分享
2013/09/03 Javascript
JavaScript中使用Substring删除字符串最后一个字符
2013/11/03 Javascript
中文输入法不触发onkeyup事件的解决办法
2014/07/09 Javascript
Nodejs学习笔记之Global Objects全局对象
2015/01/13 NodeJs
基于jquery插件编写countdown计时器
2016/06/12 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
JavaScript 中的 this 简单规则
2017/09/19 Javascript
详解webpack打包第三方类库的正确姿势
2018/10/20 Javascript
浅谈Javascript中的对象和继承
2019/04/19 Javascript
微信小程序实现轨迹回放的示例代码
2019/12/13 Javascript
在vue项目实现一个ctrl+f的搜索功能
2020/02/28 Javascript
Nuxt配置Element-UI按需引入的操作方法
2020/07/06 Javascript
python实现web方式logview的方法
2015/08/10 Python
Python实现选择排序
2017/06/04 Python
Python基于回溯法子集树模板解决找零问题示例
2017/09/11 Python
pycharm中使用anaconda部署python环境的方法步骤
2018/12/19 Python
Python图像处理实现两幅图像合成一幅图像的方法【测试可用】
2019/01/04 Python
python实现计算器功能
2019/10/31 Python
python实发邮件实例详解
2019/11/11 Python
Python定义一个Actor任务
2020/07/29 Python
浅谈Python xlwings 读取Excel文件的正确姿势
2021/02/26 Python
香蕉共和国加拿大官网:Banana Republic加拿大
2018/08/06 全球购物
What is the purpose of Void class? Void类的作用是什么?
2016/10/31 面试题
Java语言程序设计测试题选择题部分
2014/04/03 面试题
社团2014年植树节活动总结
2014/03/11 职场文书
高一学生期末评语
2014/04/25 职场文书
2014年女职工工作总结
2014/11/27 职场文书
商务代表岗位职责
2015/02/15 职场文书
预备党员群众意见
2015/06/01 职场文书
二婚主持词
2015/06/30 职场文书
小学入学感言
2015/08/01 职场文书
HTML常用标签超详细整理
2022/03/19 HTML / CSS