non è questione di sporcizia o che altro, il metodo da te utilizzato va bene ed è anche il meno macchinoso, potresti pure far si che la pagina php ritorni la stringa parsata da json_encode.

In questo modo allo script javascript arriverebbe non più testo html ma veri e propri oggetti javascript, ma ti posso assicurare che a parte il fatto che scriverai qualcosa in più non otterresti nessun beneficio in termini di sicurezza.

Tuttavia json_encode si rileva una manna dal cielo quando da una richiesta asincrona ti aspetti che arrivino strutture dati più complesse di una stringa (array associativi e compagnia bella).

Studiare json e json_encode ti potrà essere molto utile in futuro, ma nello script da te descritto non è di chissà quale utilità.