Я пытаюсь установить конфигурацию MySQL соединения на Codeigniter-4, чтобы получить правильный тип данных результатов numeri c. Все результаты возвращаются в виде строк.
Я использую mysqli , а класс подключения (CodeIgniter \ Database \ MySQLi \ Connection), похоже, не настраивает параметр MYSQLI_OPT_INT_AND_FLOAT_NATIVE on true и у меня нет способа сделать это.
Я думаю расширить класс Connection, но Option (я думаю) должен быть установлен раньше вызывается mysqli real_connect (тогда мне нужно переписать всю функцию connect ). Несмотря на это, я безуспешно пытался расширить класс Connection.
На CodeIgniter \ Database загрузчик, кажется, позволяет использовать полностью новый DBDriver, используя ссылку на пространство имен с "\ "в конфигурации базы данных.
$className = strpos($params['DBDriver'], '\\') === false
? '\CodeIgniter\Database\\' . $params['DBDriver'] . '\\Connection'
: $params['DBDriver'] . '\\Connection';
, но я пытаюсь найти лучшее решение, чем переписывать полный драйвер.
Конечно, решением было бы реализовать объект для каждая модель данных, но я пытаюсь получить необработанные данные для внешнего интерфейса без этих накладных расходов.
Есть идеи ???