[PHP] Serialiser en XML et en JSON grâce à xml_encode et json_encode

Les développeurs PHP utilisent souvent du JSON afin de sérialiser des données pour les transmettre.

Le JSON est relativement léger et PHP intègre nativement des fonctions afin de sérialiser et désérialiser des objets.

Mais le JSON n’est pas le seul format d’échange intéressant: le XML, bien que plus verbeux est également intéressant pour transmettre des données.

Mon problème est que pour un projet mobile, il me faut absolument sérialiser des objets en XML, ce qui n’est pas natif dans PHP.…

Read more

Compresser facilement du JSON en PHP

Aujourd'hui j'ai été amené à compresser du JSON en PHP afin de gagner de la bande passante sur mon serveur Web.

Pour cela, il suffit d'ajouter une compression GZIP dans votre code PHP afin de compresser automatiquement votre JSON.

Voici le code, vous verrez c'est tout simple:

//On recupere les données
$data = get_data();

//On active le buffer de sortie via gzhandler
ob_start('ob_gzhandler');

//On envoie le résultat normalement
echo json_encode($data);

Sans compression GZIP j'avais le header HTTP suivant:

Content-Length    500800
Content-Type      application/json

Et avec la compression j'obtiens cela:

Content-Encoding  gzip
Vary              Accept-Encoding
Content-Length    15922
Content-Type      application/json

C'est donc super performant, d'autant plus que la majorité des navigateurs supporte la compression GZIP nativement 🙂…

Read more