В PHP я использую json_encode() для эхо-массивов в атрибутах данных HTML5.
Поскольку JSON требует - и json_encode() генерирует - значения, инкапсулированные двойными кавычками. Поэтому я переношу атрибуты данных с одинарными кавычками, например:
<article data-tags='["html5","jquery","php","test's"]'>
Как вы можете видеть, последний тег (test) содержит одну цитату, а использование json_encode() без параметров приводит к проблемам с анализом.
Поэтому я использую json_encode() с параметром JSON_HEX_APOS, и синтаксический анализ прекрасен, так как мои одинарные кавычки закодированы, но мне интересно: существует ли недостаток в этом?