No entiendo realmente para que lo quieres así, normalmente, se suele hacer como has hecho en tu mensaje de presentación, un json con datos simplemente, y si esa función está destinada a responder a una peticion ajax de un javascript que luego usara el json para actualizar la página, pues ya con jquery modificas el dom y usas los resultados....Pero bueno, es mi experiencia personal, no te voy a contradecir y mas bien voy a ayudarte que para esto estas aqui
Aqui tienes el código que codifica json con el html como quieres.
Código PHP:
<?php
// your code goes here header("Content-Type: text/html; charset=UTF-8");
//Credenciales de la BBDD
$db = "prueba";
$host = 'localhost';
$username = "prueba";
$password = '123';
//Conectamos al servidor de la Base de datos
$link = mysql_connect($host,$username,$password) or die("No se puede conectar");
//Seleccionamos la BBDD
mysql_select_db($db) or die ("No se ha podido seleccionar a la base de datos");
//Lanzamos la consulta
$consulta = mysql_query("SELECT * from usuarios");
//Creamos un array para almacenar los resultados
$html = array();
//Agregamos las filas devueltas al array
while ($r = mysql_fetch_assoc($consulta)) {
$html[]= '<div class="x-info">
<p>Información</p>
<span>Nombres: <strong>'.$r['nombre'].'</strong> </span>
<span>Fecha de nacimiento: <strong>'.$r['nacimiento'].'</strong> </span>
<div>
<div class="comentarios" id="'.$r['id'].'">
<div id="'.$r['id'].'"><strong>José Pérez</strong> </div>
<span>Hola, como estan <strong>4 de abril</strong> </span>
</div>
<div class="comentarios" id="24">
<div id="24"><strong>José Pérez</strong> </div>
<span>'.$r['comentario'].' <strong>'.$r['f_comment'].'</strong> </span>
</div>';
}
//Devolvemos el resultado
$miArray = array("sync_t"=>"true", "inner_html"=>$html);
echo print_r(json_encode($miArray));
Cogí indices de array inventados porque no conozco tu base de datos, pero me imagino que se entiende lo que quise hacer.
Espero que haya entendido bien lo que quisistes hacer y que te haya podido ayudar