Laravel супер простой в использовании инструмент подсказки кода Laravel IDE Helper

PHP Laravel

file

Laravel IDE Helper — чрезвычайно полезный инструмент для подсказок и завершения кода, который может значительно облегчить написание кода.

Гитхаб нажмите здесь

Установить

Установите lave-ide-помощник

# 如果只想在开发环境安装请加上 --dev
composer require barryvdh/laravel-ide-helper

Установите доктрину/dbal "Пожалуйста, установите ее, она требуется при аннотировании полей для моделей"

# 如果只想在开发环境安装请加上 --dev
composer require "doctrine/dbal: ~2.3"

Добавьте в массив "providers" в "config/app.php"

Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class

если вашLaravelВерсия меньше 5.5 "Если я правильно помню", пожалуйста, зарегистрируйте поставщика услуг, иначе не обращайте внимания

Если вы устанавливаете только «larave-ide-helper» в среде разработки, вы можете написать следующий код в методе «register» «app/Providers/AppServiceProvider.php»:

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 — Создание аннотаций для фасадов
  • php artisan ide-helper:models — Создание аннотаций для моделей данных
  • php artisan ide-helper:meta — Создать метафайл PhpStorm

Автоматически генерировать аннотации для фасадов Laravel

запустить из командной строки

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 для контроля версии перед генерацией комментариев , на всякий случай.

Совет: Чтобы сгенерировать информацию о полях для модели, в базе данных должна быть соответствующая таблица данных.Не создавайте комментарий, когда миграция не запущена, иначе информация о полях будет недоступна.

Автоматически аннотировать связанные действия

Что это означает? Например, такой код часто встречается в файлах миграции:

$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 может быть сгенерирован для поддержки фабричного шаблона.Для Laravel это означает, что мы можем заставить PhpStorm понять, какой тип объектов мы разрешаем из контейнера IoC. Например: события вернут объект «Illuminate\Events\Dispatcher», с метафайлом, который вы можете вызвать 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 вступил в силу.

запустить генерировать автоматически

Если вы хотите автоматически обновлять аннотацию при обновлении пакета зависимостей, вы можете выполнить следующую настройку в файле composer.json:

"scripts":{
    "post-update-cmd": [
        "Illuminate\\Foundation\\ComposerScripts::postUpdate",
        "php artisan ide-helper:generate",
        "php artisan ide-helper:meta"
    ]
}

Совет. Если вы развертываете ide helper только в среде разработки, не делайте этого, чтобы избежать ненужных проблем, связанных с сообщением об ошибках в рабочей среде.

конец

Все использование, вероятно, таково.На самом деле, в Laravel 5.5 и выше вам нужно только установить два пакета «larave-ide-helper» и «doctrine/dbal: ~ 2.3», и вы можете играть счастливо без какой-либо настройки .

Если в тексте обнаружены ошибки,Пожалуйста! топор! просто!