Отправка HTML-кода через JSON

У меня есть php-скрипт, который генерирует HTML-контент. Есть ли способ отправить этот HTML-контент через JSON на мою веб-страницу из php-скрипта?

Да, вы можете использовать json_encode чтобы взять вашу строку HTML и избежать ее при необходимости.

Обратите внимание, что в JSON элемент верхнего уровня должен быть массивом или объектом (это больше не верно) , это не просто строка. Таким образом, вы захотите создать объект и сделать HTML-строку свойством объекта (возможно, единственного), поэтому полученный JSON выглядит примерно так:

 {"html": "<p>I'm the markup</p>"} 

Сделать это

1-й поставьте все содержимое вашего HTML-массива, затем выполните json_encode

 $html_content="<p>hello this is sample text"; $json_array=array( 'content'=>50, 'html_content'=>$html_content ); echo json_encode($json_array); 

Все строковые данные должны кодироваться в кодировке UTF-8.

 $out = array( 'render' => utf8_encode($renderOutput), 'text' => utf8_encode($textOutput) ); $out = json_encode($out); die($out); 

В PHP:

 $data = "<html>...."; exit(json_encode($data)); 

Затем вы должны использовать AJAX для извлечения данных и делать с ними то, что вы хотите. Я предлагаю использовать JQuery: http://api.jquery.com/jQuery.getJSON/

Просто чтобы расширить ответ @TJ Crowder.

json_encode отлично json_encode с простыми html-строками, но в моем опыте, однако, json_encode часто путается, (или становится довольно сложно правильно скрыть) более сложный вложенный html, смешанный с php. Два варианта рассмотрения, если вы находитесь в этой позиции: кодирование / декодирование разметки сначала с помощью чего-то вроде [base64_encode][1] / decode (довольно немного хита производительности) или (и, возможно, предпочтительно), быть более избирательным в том, что вы проходите через json и генерируете необходимую разметку на стороне клиента.

Вы можете отправить его как строку, почему бы и нет. Но вы, вероятно, пропустили JSON здесь немного, поскольку, насколько я понимаю, дело в том, чтобы отправить только нужные данные и обернуть их в HTML на клиенте.