Почему возвращаемые из БД значения в Wordpress имеют тип STRING?
В Wordpress делаю выборку из базы данных при помощи $result=$wpdb->get_results... ,ARRAY_A.
В таблице есть поля разного типа: varchar, tinyint, int, но возвращаются все как строковые значения в ассоциативном массиве. Потом отдаю эти данные через JSON в скрипт и получается белиберда, так как в булевых значениях вместо 1 получаю "1". Почему так происходит?
Вот пример возвращаемого JSON
"current": {
"id": "24",
"user_id": "7",
"org_id": "2",
"date_add": "2019-12-13 12:53:44",
"date_change": "2020-01-07 19:00:22",
"date_delete": "2020-01-07 13:16:18",
"first_name": "Натан",
"middle_name": "Петрович",
"last_name": "Вельзеевул",
"gender": "0",
"birthday": "1900-01-23",
"iin": "666666666666",
"resident": "0",
"eaes_member": "1",
"pensioner": "1",
"pensioner_year": "1",
"invalid_group": "2",
"main_work": "1",
"recoupment": "1",
"civil_contract": "1",
"sums": "",
"deductions": "",
"current": "1",
"deleted": "0"
}
id, user_id, например у меня в базе имеют тип INT, а тот же pensioner - TINYINT, но все возвращаются, как строковые. Я уже проверил, они изначально такие при запросе из базы.
Потому что оно так работает.
Приводите используя int в php
Я уже привык когда user_id то 1 мне вернет, то "1" - перед сравнением приходится приводить в единый тип (ну или игнорить строгое соответствие - что реже)