Pustaka PHP ini adalah kumpulan sifat dan antarmuka yang menambahkan perilaku ke entitas dan repositori Doktrin.
Saat ini menangani:
composer require knplabs/doctrine-behaviors
Yang harus Anda lakukan adalah mendefinisikan entitas Doktrin:
Untuk beberapa perilaku seperti pohon, Anda dapat menggunakan sifat repositori:
<?php
declare (strict_types= 1 );
namespace App Repository ;
use Doctrine ORM EntityRepository ;
use Knp DoctrineBehaviors ORM Tree TreeTrait ;
final class CategoryRepository extends EntityRepository
{
use TreeTrait;
}
Voila!
Anda sekarang memiliki Category
yang berfungsi seperti itu.
Ekstensi PHPStan tersedia dan menyediakan fitur berikut:
TranslatableInterface::getTranslations()
dan TranslatableInterface::getNewTranslations()
TranslatableInterface::translate()
TranslationInterface::getTranslatable()
Sertakan phpstan-extension.neon
dalam konfigurasi PHPStan proyek Anda:
# phpstan.neon
includes :
- vendor/knplabs/doctrine-behaviors/phpstan-extension.neon
1 fitur per permintaan tarik
Fitur baru memerlukan pengujian
Tes dan analisis statis harus lulus :
vendor/bin/phpunit
composer fix-cs
composer phpstan
Ada banyak perubahan antara 1 dan 2, tapi jangan khawatir. Paket ini menggunakan Rector, yang menangani upgrade untuk Anda.
composer require rector/rector --dev
Buat konfigurasi rector.php
:
vendor/bin/rector init
Tambahkan set pemutakhiran Perilaku Ajaran ke rector.php
:
use Rector Core Configuration Option ;
use Symfony Component DependencyInjection Loader Configurator ContainerConfigurator ;
use Rector Doctrine Set DoctrineSetList ;
return static function ( ContainerConfigurator $ containerConfigurator ): void {
$ containerConfigurator -> import (DoctrineSetList:: DOCTRINE_BEHAVIORS_20 );
};
Jalankan Rektor:
vendor/bin/rector process src