При миграции php на 7.4 возможно возникновение ошибки «Function create_function() is Deprecated» в старом легаси коде. Лечится достаточно просто…
1 вариант, используем готовый интерпретатор, меняем текст «rector.php» на
<?php // rector.php declare(strict_types=1); use Rector\Php72\Rector\FuncCall\CreateFunctionToAnonymousFunctionRector; use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator; return function (ContainerConfigurator $containerConfigurator): void { $services = $containerConfigurator->services(); $services->set(CreateFunctionToAnonymousFunctionRector::class); }; |
Вставляем код в «Input Code», жмем зеленую кнопку, в «What did Rector change?» получаем diff на основе которого делаем изменения.
2 вариант, тоже самое, но через compose ставим к себе на сервер:
composer require rector/rector --dev |
<?php // rector.php declare(strict_types=1); use Rector\Php72\Rector\FuncCall\CreateFunctionToAnonymousFunctionRector; use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator; return function (ContainerConfigurator $containerConfigurator): void { $services = $containerConfigurator->services(); $services->set(CreateFunctionToAnonymousFunctionRector::class); }; |
vendor/bin/rector process src |