Исключение апострофа JSON до укорочения json_encode PHP?

У меня есть поле в базе данных MySQL (utf8_general_ci), которая содержит кудрявый (умный?) Апостроф: Owner's...

Это отлично печатает без специальной обработки, если я получаю доступ к странице PHP, которая извлекает ее из БД. Тем не менее, я пытаюсь получить к нему доступ через запрос $ .getJSON на другой странице, поэтому я использовал json_encode PHP. Он обрезает значение так, чтобы он читал « Owner , а затем успешно кодировал остальные данные. Если я использую PHP utf8_encode в поле до json_encode, он включает полное значение с ' закодированным до», которое затем не печатает ничего на странице, предоставляя мне Owners . PHP- htmlentities и htmlspecialchars не влияют.

Рассматривая запрос в инструментах Chrome, Owner's отображается как Owner s на странице $ .getJSON.

Может кто-нибудь помочь мне здесь? Я прочитал другие вопросы о SO и в Интернете, но я не могу найти ничего, что помогает, и я не много работал с JSON.

Спасибо за прочтение.

Подробнее: json_encode

Пример:

 echo json_encode($array, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE); 

Используя utf8_encode() PHP, utf8_encode() чем мой json_encode() действительно остановил данные после отключения после ' но он также закодировал его до \0092 который не отображался (управляющий символ). Когда я использовал MySQL SET NAMES utf8 перед моим запросом, мне не пришлось вообще использовать utf8_encode() , и мой json был правильно закодирован с ' mapping to \u2019 , который отображается хорошо.

Спасибо за ссылку @Pekka, это помогло мне сузить возможности.