一、优化代码补全
Laravel-ide-helper可以更完美的支持Laravel框架自带的代码补全。
安装laravel-ide-helper:
composer require --dev barryvdh/laravel-ide-helper
然后在config/app.php中加入:
'providers' => [
Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class,
]
最后执行:
php artisan ide-helper:generate
该命令会为你的Laravel应用生成一个叫做_ide_helper.php的文件,该文件包含Laravel中包含的所有类的完整数据列表,以及提供类型提示可以使用的注释。
二、优化Eloquent模型的属性和方法注释
Laravel-ide-helper不仅可以增强代码补全,还可以为Eloquent模型添加属性和方法注释。假设我们有这样一个Eloquent模型:
App\User.php
class User extends Model
{
//
}
执行如下命令即可:
php artisan ide-helper:models -W
Laravel-ide-helper还可以为Eloquent模型自动生成属性和方法的注释。
/**
* App\User
*
* @property int $id
* @property string $name
* @property string $email
* @property string|null $email_verified_at
* @property string $password
* @property string|null $remember_token
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder|User newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|User newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|User query()
* @method static \Illuminate\Database\Eloquent\Builder|User whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|User whereEmail($value)
* @method static \Illuminate\Database\Eloquent\Builder|User whereEmailVerifiedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|User whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|User whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|User wherePassword($value)
* @method static \Illuminate\Database\Eloquent\Builder|User whereRememberToken($value)
* @method static \Illuminate\Database\Eloquent\Builder|User whereUpdatedAt($value)
* @mixin \Eloquent
*/
class User extends Model
{
//
}
三、优化辅助函数的注释
Laravel框架自带的全局辅助函数,如view(),csrf_token()等,在IDE中有可能会出现不能正确提示的情况,使用laravel-ide-helper工具包进行优化,即可实现自动提示。
php artisan ide-helper:generate -H
注:laravel-ide-helper更新后,需要加-H参数,否则看不到全局辅助函数
四、优化控制器方法注释
Laravel-ide-helper工具包还可以实现Controller中类的方法参数提示
php artisan ide-helper:generate -M
注:laravel-ide-helper更新后,需要加-M参数,否则看不到控制器方法参数的注释。
五、优化路由文件注释
Laravel-ide-helper还可以为路由文件注释,最后生成的方法注释如下:
/**
* Class UserController
*
* @package App\Http\Controllers
* @param int $id Example: The ID of the user.
* @param string|null $name
* @return Response
*/
public function showProfile(int $id, string $name = null)
{
//
}
生成路由文件注释的命令如下:
php artisan ide-helper:generate -R
总结
Laravel IDE Helper是一种为Laravel项目生成代码提示的优秀工具,同时也可以为你节约下大量的开发时间。