J'ai une grande quantité de données à déplacer en utilisant deux scripts PHP: un sur le côté client en utilisant un script PHP en ligne de commande et d'autres derrière Apache. Je POSTE les données du côté serveur et utilise le flux d'entrée php: // pour l'enregistrer sur le serveur web. Pour éviter d'atteindre des limites de mémoire, les données sont séparées en blocs de 500 Ko pour chaque requête POST. Tout cela fonctionne bien.Quelle méthode de compression utiliser en PHP?
Maintenant, pour économiser la bande passante et l'accélérer, je veux compresser les données avant d'envoyer et de décompresser lorsqu'il est reçu à l'autre extrémité. J'ai trouvé 3 paires de fonctions qui peuvent faire le travail, mais je ne peux pas décider lequel utiliser:
Quelle paire de fonctions recommanderiez-vous et pourquoi?
MISE À JOUR: Je viens de lire FAQ zlib:
Le format gzip (gzencode
) a été conçu pour conserver les informations de répertoire d'un seul fichier, comme le nom et la dernière date de modification. Le format zlib (gzcompress
), quant à lui, a été conçu pour les applications en mémoire et de communication, et possède un en-tête et une bande-annonce beaucoup plus compacts et utilise un contrôle d'intégrité plus rapide que gzip.
'gzdecode()' ne semble pas encore être disponible en php, alors évitez-le. –
'gzdecode()' est défini uniquement pour PHP 5.4.0 ou plus récent: http://php.net/manual/fr/function.gzdecode.php –