Вы всё еще используете CJSON? Если нет, то эта короткая заметка не для вас.
Библиотека CJSON известна разработчикам, работающим с фреймворком Yii (версии старее 2.х). И кажется волне логичным использовать в проектах на Yii то, что рекомендуют сами разработчики этого, в целом весьма неплохого, фреймворка.
В принципе и я считал правильным использовать эту библиотечку, если уж она поставляется вместе с фрэймворком. Почему нет?
А вот почему «нет»:
Где Input size — это размер строки в формате json, поступающей на вход.
В обоих случаях под замеры попали две последовательные операции: decode и encode получившегося объекта. Для чистоты эксперимента показаны усредненные значения за 10 итераций.
Выводы делайте сами.
И, да, вы всё еще используете CJSON?
UPD: Обновил данные статистики. Для подсчета потребляемой оперативной памяти используется memory_get_usage() с параметром true. Также высчитаны средние значения за 10 итераций.
Библиотека CJSON известна разработчикам, работающим с фреймворком Yii (версии старее 2.х). И кажется волне логичным использовать в проектах на Yii то, что рекомендуют сами разработчики этого, в целом весьма неплохого, фреймворка.
В принципе и я считал правильным использовать эту библиотечку, если уж она поставляется вместе с фрэймворком. Почему нет?
А вот почему «нет»:
Тест стандартного расширение JSON в PHP:
Input size, kb: 866,55
MEM, kb: 13363,2
Time, msec: 0,0292
Тест CJSON:
Input size, kb: 866,55
MEM, kb: 12006,4
Time, msec: 1,9649
Где Input size — это размер строки в формате json, поступающей на вход.
В обоих случаях под замеры попали две последовательные операции: decode и encode получившегося объекта. Для чистоты эксперимента показаны усредненные значения за 10 итераций.
Выводы делайте сами.
И, да, вы всё еще используете CJSON?
UPD: Обновил данные статистики. Для подсчета потребляемой оперативной памяти используется memory_get_usage() с параметром true. Также высчитаны средние значения за 10 итераций.