Php pdo emulate_prepares false stringify_fetches false int still string

Я пытаюсь получить номера для вывода как таковые при извлечении данных из базы данных MySQL на сайте, размещенном на Hostgator. PHP 7.0, MySQL - версия сервера: 5.5.48-37.8 - Percona Server (GPL), версия 37.8, версия 727, версия клиентской базы данных: libmysql - 5.1.73.

Параметры PDO:

[
    PDO::ATTR_EMULATE_PREPARES => false,
    PDO::ATTR_STRINGIFY_FETCHES => false,
]

Но даже с этими атрибутами он все равно возвращает целые числа в виде строк. Как я могу это исправить?

Ответ 1

Вы посмотрели на этот вопрос SO: Как получить числовые типы из MySQL с помощью PDO? Также убедитесь, что у вас установлен и активирован mysqlnd. Посмотрите php --info в разделе pdo_mysql.

Если это так, результат должен выглядеть следующим образом:

pdo_mysql

PDO Driver for MySQL => enabled
Client API version => mysqlnd 5.0.10 - 20111026 - $Id:___ $

Если это не установлено, установите его следующим образом:

apt-get remove php5-mysql
apt-get install php5-mysqlnd
service apache2 restart

Если это не исправить, проблема может возникнуть в коде, который вы нам не показали.

Надеюсь, это поможет! Ура!