CodeIgniter 4 - расширить / заменить / переопределить CodeIgniter \ Images \ Handlers \ BaseHandler :: getEXIF () - PullRequest
1 голос
/ 30 апреля 2020

Попытка CI4 после долгого отлучения от CI3. Некоторое время занимался этим и, кажется, не могу понять, что это правильно ...

exif_read_data выдает ошибки вместо возврата false, поэтому я хочу добавить префикс @ следующим образом.

Все, что я хочу сделать, это заменить CodeIgniter\Images\Handlers\BaseHandler::getEXIF() на:

public function getEXIF(string $key = null, bool $silent = false) {
    if (! function_exists('exif_read_data') && $silent) {
        return null;
    }
    $exif = null; // default
    switch ($this->image()->imageType) {
        case IMAGETYPE_JPEG:
        case IMAGETYPE_TIFF_II:
            $exif = @exif_read_data($this->image()->getPathname());
            if (! is_null($key) && is_array($exif)) {
                $exif = $exif[$key] ?? false;
            }
    }
    return $exif;
}

Отредактировано system/Images/Handlers/BaseHandler.php непосредственно как быстрое исправление, но хочу правильно расширить ядро.

Просто не могу выяснить правильное пространство имен, пути и конфигурацию для загрузки этого переопределения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...