Я использую PHP v5.6.
Поскольку я читал, что функция php json_encode автоматически преобразует int в строку. Но не в моем случае. Json_encode все равно возвращает его int int string.
Пример:
json_encode(['code' => 200, 'results' => [id=> 1]]);
мои ожидаемые результаты все становятся строкой. но я получаю
{"code":200,"results":{"id": 1}}
Ожидаемый результат:
{"code":"200","results":{"id": "1"}}
Как я могу изменить весь результат, становясь строкой, не используя «» для каждого значения ?.
NB: массив результатов основан на запросе.
В ссылке, помещенной Томасом в комментариях, один пользователь предлагает вам сделать это:
$data = json_encode(array_map('strval', $data));
Это может быть не самым эффективным с точки зрения производительности, поскольку каждая запись в массиве будет проходить через функцию strval
.
json_encode(['code' => 200, 'results' => [id=> strval(1)]]);
С strval () php вернется
Строковое значение var.