Переход с PHP 5.x на 8.x — значительный скачок через несколько major-версий. Вот пошаговый план миграции:
// Пример проверки текущей версии PHP
echo 'Текущая версия PHP: ' . phpversion();
mysql_*
функции)Рекомендуемый путь:
PHP 5.x → 7.0 → 7.1 → 7.2 → 7.3 → 7.4 → 8.0 → 8.1 → 8.2 → 8.3
// PHP 5.x
mysql_connect(); // Удалено в PHP 7.0
ereg(); // Удалено в PHP 7.0
create_function(); // Удалено в PHP 8.0
function sum(int $a, int $b): int {
return $a + $b;
}
TypeError
__construct()
(старый стиль удален)final
для констант (PHP 8.1+)PHPCompatibility (для PHP_CodeSniffer)
phpcs --standard=PHPCompatibility target/
Phan и Psalm для статического анализа
Встроенный веб-сервер PHP для тестирования:
php -S localhost:8000
Обновите composer.json
требования:
{
"require": {
"php": "^8.0"
}
}
Замените устаревшие конструкции:
mysql_*
→ PDO/MySQLiarray()
→ []
each()
→ foreach
Тестирование:
declare(strict_types=1);
error_reporting(E_ALL)
)match
вместо switch
Миграция требует тщательного планирования. Основные этапы:
Для сложных проектов рассмотрите возможность постепенного внедрения через параллельный запуск старой и новой версий.