Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Правильный тип значения в JSON
|
|||
|---|---|---|---|
|
#18+
Всем добрый день! Пишу API для работы с БД (FireBird 2.5) Полученный результат отдаю в формате JSON, проблема в том, что из базы тянется всё как строка и соответсвено все значения в JSON строковые, но в базе есть вещественые числа и они должны в ответе быть как вещественые числа. Вообще числа должны быть числами, строки строками. Прошу не судить сильно с PHP знаком не очень хорошо.... Так делаю запрос в базу отдаю ответ: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. т.е. отдаю результат запроса вот так : echo json_encode(db_query_to_info_array($query)); функция db_query_to_info_array отписана в другом юнете: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. И я так предпологаю где-то в этой функции нужно воткнуть проверку на строка не строка, точнее число не число... Подскажите как это правильно сделать.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 12:23 |
|
||
|
Правильный тип значения в JSON
|
|||
|---|---|---|---|
|
#18+
Dozent, php сам преобразует типы, но можно принудительно указать (float)$foo и $foo преобразуется в число ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 12:36 |
|
||
|
Правильный тип значения в JSON
|
|||
|---|---|---|---|
|
#18+
для проверки можно использовать is-numeric ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 12:38 |
|
||
|
Правильный тип значения в JSON
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnogu, Да, действительно интовые занчения сами преобразуются, а вот те, которые должны быть веществеными нет) вот что возвращает Код: php 1. 3,"36.3",0,null,null,null,null] Вот тут 36.3 как строка, хотя это вещественое число, в базе это поле типа NUMERIC. Мб в этом проблема? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 12:48 |
|
||
|
Правильный тип значения в JSON
|
|||
|---|---|---|---|
|
#18+
а где потом это число используется? сделай (float)"36.3" если уж прям так принципиально ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 13:22 |
|
||
|
Правильный тип значения в JSON
|
|||
|---|---|---|---|
|
#18+
еще раз. в PHP нечеткая типизация, и автоматическое преобразование типов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 13:46 |
|
||
|
|

start [/forum/topic.php?fid=23&tid=1461582]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 264ms |
| total: | 429ms |

| 0 / 0 |
