2010-04-30 3 views
5

Ok, je me demandais juste sur les versions de PHP dans lesquelles cette classe est intégrée. Et si elles sont intégrées dans toutes les plates-formes (systèmes d'exploitation). Je veux une approche pour rechercher à travers un fichier zip et placer des fichiers en utilisant file_put_contents dans différents chemins de fichiers dans le webroot. En tout cas, je suis familier avec la façon de faire cela avec la classe ZipArchive, mais je me demande si l'utilisation de cette classe serait une bonne solution et supporterait MOST, sinon TOUS les serveurs ?? Je veux dire, je préfère ne pas utiliser une méthode qui nécessite l'installation du serveur. Je suis à la recherche d'une solution à ce qui soutiendra au moins la plupart des serveurs sans avoir à installer la classe ...ZipArchive php Class - Est-il intégré à PHP?

Merci :)

Aussi, je voudrais soutenir tar.gz d'ouverture et/ou fichiers .tgz si possible, mais je ne pense pas que la classe ZipArchive supporte cela, mais peut-être une classe php intégrée différente fait ??

+0

"dans différentes zones du serveur" - si vous voulez dire En dehors du webroot, cela ne fonctionnera probablement pas sur beaucoup de machines du tout ... – tadamson

+0

Non, je veux dire dans le webroot ofcourse ... – SoLoGHoST

Répondre

9

La prise en charge de Tar n'est pas intégrée dans PHP, mais si vous regardez la bibliothèque PEAR vous devriez pouvoir trouver des classes qui supportent la création/l'extraction de tarballs (entre autres). Jetez un oeil à http://pear.php.net/package/Archive_Tar ou http://pear.php.net/package/File_Archive. Le dernier devrait être une interface générique pour plusieurs formats d'archivage (y compris ZIP et TAR).

Que le support ZIP soit intégré ou non, cela peut varier, mais je suppose que la plupart des emballeurs l'incluront. Ensuite, vous pouvez toujours le tester en vérifiant si la classe ZipArchive existe en appelant class_exists('ZipArchive'); et afficher un message d'erreur ou revenir à une approche plus générique ...

+0

Ok, merci je suppose, vous avez été très utile, même si je suis toujours à la recherche pour une approche générique de ce qui satisfera toutes les versions de php, ou MOST versions de php. – SoLoGHoST

+0

Eh bien, si vous utilisez les classes PEAR dans votre projet (vous pouvez les inclure dans votre projet), vous avez une approche générique qui fonctionnera sur la plupart des versions de PHP. Il suffit de télécharger et d'extraire l'archive et de placer les fichiers quelque part sur votre chemin ... – wimvds