Ошибки TCPDF на PHP 7

Я использую плагин TCPDF для генерации PDF в PHP 7. Тот же код работает нормально в более низкой версии PHP 5, но когда я запускаю этот же код в PHP 7, он выдает следующее сообщение об ошибке.

Обнаружена ошибка PHP. Уровень серьезности: 8192

Сообщение: функция each() устарела. Это сообщение будет подавлено при дальнейших звонках

Имя файла: tcpdf/tcpdf.php

Номер строки: 16542

1 ответ

Редактировать в файле: \FPDI\fpdi.php Строка 567:

//while (list($k, $v) = each($value[1])) {

в коде:foreach ($value[1] AS $k => $v) {

И отредактируйте в файле: \tcpdf\tcpdf.php Строка 16543:

//while (list($id, $name) = each($attr_array[1])) {

в коде:foreach($attr_array[1] as $id => $name) {

Примечание для любого, кто найдет это... в последней версии TCPDF это исправлено... поэтому, если вы просто делаете обновление, у вас должно быть все в порядке: https://github.com/tecnickcom/TCPDF

По словам php:

Эта функция УСТАРЕЛА с версии PHP 7.2.0. Полагаться на эту функцию крайне не рекомендуется.

http://php.net/manual/en/function.each.php

Насколько я помню, у меня также есть "устаревший" сценарий с каждым. Вместо того, чтобы изменять его, я просто отключил устаревшие предупреждения об ошибках (на данный момент).

index.php

switch (ENVIRONMENT) {
    case 'development':
        error_reporting(~E_DEPRECATED);
        ini_set('display_errors', 1);
        break;
    case 'testing':
    case 'production':
        ini_set('display_errors', 0);
        error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & ~E_USER_NOTICE & ~E_USER_DEPRECATED);
        break;
    default:
        header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
        echo 'The application environment is not set correctly.';
        exit(1); // EXIT_ERROR
}

Вы можете обновить библиотеку, поскольку я считаю, что она все еще находится в разработке, или, если это не так, вы также можете изменить код, заменив каждый из них соответствующим циклом foreach, где это необходимо:

Как решить эту устаревшую функцию каждый php

Другие вопросы по тегам