您好,欢迎访问一九零五行业门户网

分享laravel超好用程序提示工具Laravel IDE Helper

laravel教程:laravel 超好用程序提示工具 laravel ide helper安装安装 larave-ide-helper
# 如果只想在开发环境  安装请加上 --dev  composer require barryvdh/laravel-ide-helper
安装 doctrine/dbal 「请装上它,在为模型注释字段的时候必须用到它」
# 如果只想在开发环境安装请加上 --dev  composer require doctrine/dbal: ~2.3
在 「config/app.php」的 「providers」数组中加入
barryvdh\laravelidehelper\idehelperserviceprovider::class
如果你的 laravel 版本小于 5.5 「如果没记错」的话,请注册服务提供者,否则请忽略
如果你只在开发环境中安装「larave-ide-helper」,那么可以在「app/providers/appserviceprovider.php」的「register」方法中写入下面代码:
public function register()  {      if ($this->app->environment() !== 'production') {          $this->app->register(\barryvdh\laravelidehelper\idehelperserviceprovider::class);      }      // ...  }
导出配置文件(如果默认配置就满足需求了,也可以忽略这一步)
php artisan vendor:publish --provider=barryvdh\laravelidehelper\idehelperserviceprovider --tag=config
好了,接下去可以愉快的使用了
使用php artisan ide-helper:generate - 为 facades 生成注释
php artisan ide-helper:models - 为数据模型生成注释
php artisan ide-helper:meta - 生成 phpstorm meta file
自动为 laravel 的 facades 生成注释
在命令行下运行
php artisan ide-helper:generate
注:如果存在文件 「bootstrap/compiled.php」 需要先删除, 可以在生成文当前运行 php artisan clear-compiled。自动为模型生成注释
为所有模型生成注释 php artisan ide-helper:models, 这时会出现询问:
do you want to overwrite the existing model files? choose no to write to _ide_helper_models.php instead? (yes/no):  (yes/no) [no]:
输入 yes 则会直接在模型文件中写入注释,否则会生成「_ide_helper_models.php」文件。建议选择 yes,这样在跟踪文件的时候不会跳转到「_ide_helper_models.php」文件,不过这么做最好对模型文件做个备份,至少在生成注释之前用 git 控制一下版本,以防万一。
提示: 为模型生成字段信息必须在数据库中存在相应的数据表,不要生成 migration 还没运行 migrate 的时候就生成注释,这样是得不到字段信息的。自动为链式操作注释
这是什么意思呢?举个例子,在 migration 文件中经常可以看见这样的代码:
$table->string('email')->unique();
这时候就算调用过了 php artisan ide-helper:generate,在调用像 ->unique() 这样的链式操作的时候也无法实现代码提示,这时候需要将配置文件「如果导出的话」'include_fluent' => false 修改为 'include_fluent' => true,重新运行 php artisan ide-helper:generate。试试效果吧!
生成 .phpstorm.meta.php可以生成一个 phpstorm meta 文件去支持工厂模式。对于 laravel, 这意味着我们可以让 phpstorm 理解我们从 ioc 容器中解决了什么类型的对象。例如:事件将返回一个「illuminateeventsdispatcher」对象,利用 meta 文件您可以调用 app ('events') 并且它将自动完成 dispatcher 的方法。
app('events')->fire();  \app::make('events')->fire();  /** @var \illuminate\foundation\application $app */  $app->make('events')->fire();  // when the key is not found, it uses the argument as class name  app('app\someclass');  提示:您可能需要重启 phpstorm 使 .phpstorm.meta.php 文件生效。  自动运行 generate
想在依赖包更新是自动更新注释,可以在 composer.json 文件中做如下配置:
scripts:{      post-update-cmd: [          illuminate\\foundation\\composerscripts::postupdate,          php artisan ide-helper:generate,          php artisan ide-helper:meta      ]  }
提示:如果只在 dev 环境下部署 ide helper 还是不要这么做了,防止在生产环境中报错导致不必要的麻烦。
结尾整个使用大概就是这样了,其实在 laravel 5.5 以上版本只需要装上 larave-ide-helper 和 doctrine/dbal: ~2.3 这两个包,不用做什么配置就可以愉快的玩耍了。
如发现文中错误,请!斧!正!
以上就是分享laravel超好用程序提示工具laravel ide helper的详细内容。
其它类似信息

推荐信息