Accueil
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi Eclipse MS-Office SQL & SGBD Oracle  4D  Business Intelligence
logo
Sommaire > Bibliothèques, extensions
2.1. Images (3)
                Comment générer une image réduite de bonne qualité ?
                Comment créer une miniature de site Web ?
                GD 2 et EasyPHP - Erreur GD2.dll
2.2. LDAP (2)
                Pourquoi la récupération des attributs de ldap_get_entries est-elle impossible ?
                Pourquoi les caractères accentués pour les valeurs ne sont-ils pas retournés correctement ?
2.3. PDF (3)
                Peut-on générer un fichier PDF à partir d'un script PHP ?
                Que peut-on mettre dans le fichier PDF généré ?
                Comment afficher le fichier PDF généré sur mon site ?
2.4. Templates (52)
                Qu'est-ce qu'un template ?
                Quel est le principe de fonctionnement d'un template ?
                Quels sont les principaux systèmes de template ?
                Qu'est-ce que la phplib ?
        2.4.1. ModeliXe (8)
                        Qu'est-ce que ModeliXe ?
                        Comment installer ModeliXe ?
                        Comment instancier ModeliXe ?
                        PHP me donne des erreurs lorsque j'utilise ModeliXe
                        Quelle est la syntaxe d'un gabarit ModeliXe ?
                        Comment envoyer une variable au template avec ModeliXe ?
                        Comment répéter un bloc du gabarit avec ModeliXe ?
                        Comment placer un bloc dans un autre (imbrication) avec ModeliXe ?
        2.4.2. phpBB2 (8)
                        Qu'est-ce que phpBB2 ?
                        Comment installer le moteur de templates de phpBB2 ?
                        Comment instancier la classe de template de phpBB2 ?
                        Quelle est la syntaxe d'un gabarit phpBB2 ?
                        Comment charger un gabarit avec le moteur de phpBB2 ?
                        Comment envoyer une variable au gabarit avec le moteur de phpBB2 ?
                        Comment répéter un bloc du gabarit avec le moteur de phpBB2 ?
                        Comment placer un bloc dans un autre (imbrication) avec le moteur de templates de phpB2 ?
        2.4.3. Smarty (18)
                        Qu'est-ce que Smarty ?
                        Comment installer Smarty sur un serveur web ?
                        Comment utiliser Smarty dans un script ?
                        Afficher une variable simple (entier et chaîne)
                        Afficher le contenu d'un tableau indexé
                        Afficher le contenu d'un tableau associatif
                        Afficher le contenu d'un objet dans un template
                        Afficher une variable GET ou POST directement dans un template
                        Des conditions dans un template (if / else ...)
                        Erreur lors de l'ajout CSS ou de JavaScript dans un template
                        Inclure un template dans un autre template
                        Créer facilement une liste déroulante dans un template
                        Réaliser simplement une alternance de couleur dans un tableau
                        Eviter le spam avec la fonction Smarty {mailto...}
                        Formater une date dans un template
                        Mettre en majuscule ou en minuscule dans un template
                        Une valeur par défaut dans une variable Smarty
                        Débogage avec Smarty
        2.4.4. TinyButStrong (7)
                        Qu'est-ce que TinyButStrong ?
                        Comment installer TinyButStrong ?
                        Comment instancier TinyButStrong ?
                        Quelle est la syntaxe d'un gabarit TinyButStrong ?
                        Comment envoyer une variable au template avec TinyButStrong ?
                        Comment répéter un bloc du gabarit avec TinyButStrong ?
                        Comment placer un bloc dans un autre (imbrication) avec TinyButStrong ?
        2.4.5. VTemplate (7)
                        Qu'est-ce que VTemplate ?
                        Comment installer VTemplate ?
                        Comment instancier VTemplate ?
                        Quelle est la syntaxe d'un gabarit VTemplate ?
                        Comment envoyer une variable au template avec VTemplate ?
                        Comment répéter un bloc du gabarit avec VTemplate ?
                        Comment placer un bloc dans un autre (imbrication) avec VTemplate ?
2.5. XML (39)
        2.5.1. DOM (PHP 5) (10)
                        Qu'est-ce que DOM ?
                        Comment installer DOM pour PHP5 ?
                        Comment obtenir l'élément racine du document ?
                        Comment ajouter un élément à un objet DOM ?
                        Comment affecter un attribut à un élément DOM ?
                        Comment enregistrer un document DOM ?
                        Comment formater un document XML pour affichage ?
                        Comment supprimer les noeuds correspondant à une expression XPath en PHP5 ?
                        Comment lire un document XML distant en précisant des entêtes HTTP particulières ?
                        Comment écrire un document XML sur un serveur FTP ?
        2.5.2. DOM XML (PHP 4) (5)
                        Qu'est-ce que DOM XML ?
                        Comment installer DOM XML avec PHP4 ?
                        Comment obtenir l'élément racine du document ?
                        Comment supprimer les noeuds correspondant à une expression XPath en PHP4 ?
                        Comment formater un document XML pour affichage ?
        2.5.3. OpenDocument (OpenOffice.org) (4)
                        Que faut-il pour lire des documents OpenDocument en PHP ?
                        Comment créer un document OpenDocument ?
                        Comment ajouter un paragraphe ?
                        Comment mettre du texte en forme ?
        2.5.4. OpenXML (Microsoft Office) (18)
                        Qu'est-ce qu'OpenXML ?
                        Que faut-il pour lire des documents OpenXML en PHP ?
                        Comment créer un document OpenXML ?
                        Comment ajouter un paragraphe ?
                        Comment mettre du texte dans un paragraphe ?
                        Comment mettre du texte en forme ?
                2.5.4.1. Les Parts (9)
                                Qu'est-ce qu'une Part dans OpenXML ?
                                Comment ajouter une Part à un document OpenXML ?
                        2.5.4.1.1. Les types de contenu (ContentTypes) (4)
                                        Comment créer une Part de types pour un document OpenXML ?
                                        Comment ajouter un type par défaut ?
                                        Comment surcharger un type (override) ?
                                        Quels sont les types de contenu pour une Part de document OpenXML ?
                        2.5.4.1.2. Les relations (rels) (2)
                                        Comment créer une Part de relations pour un document OpenXML ?
                                        Comment ajouter une relation ?
                        2.5.4.1.3. Word (1)
                                        Comment créer une Part Word pour un document OpenXML ?
                2.5.4.2. Framework PHP::OpenXML (3)
                                Comment lire les propriétés d'un document OpenXML ?
                                Comment déterminer le type d'un document OpenXML ?
                                Comment convertir un document OpenXML en HTML ?
        2.5.5. SimpleXML (2)
                        Comment lire un document XML distant en précisant des entêtes HTTP particulières ?
                        Comment écrire un document XML sur un serveur FTP ?
2.6. ZIP (3)
                Qu'est-ce que l'extension ZIP ?
                Je ne dispose pas de l'extension ZIP. Existe-t-il des alternatives ?
                Est-il possible d'accéder à un fichier d'une archive ZIP sans à avoir à le décompresser ?
        Qu'est-ce qu'une bibliothèque ?
        Quelles sont les bibliothèques pour PHP ?
        Comment installer une bibliothèque ?
        Qu'est-ce qu'une extension pour PHP ?
        Quelles sont les extensions pour PHP ?
        Comment installer une extension pour PHP ?
        Qu'est-ce qu'un framework ?
        Quels sont les frameworks pour PHP ?
        Comment installer un framework ?
        Quelle différence y a-t-il entre une bibliothèque, une extension et un framework ?
        Comment récupérer le contenu d'un fichier avec cURL ?



Qu'est-ce qu'une bibliothèque ?
auteur : Guillaume Rossolini
Une bibliothèque PHP est un script ou une collection de scripts écrits en PHP.

Ces scripts mettent à la disposition du programmeur des fonctions, constantes et classes afin de l'aider à développer plus rapidement.

lien : fr Définition de 'bibliothèque'
lien : fr Les meilleurs cours sur les bibliothèques PHP

Quelles sont les bibliothèques pour PHP ?
auteur : Guillaume Rossolini
PHP est un langage libre et gratuit, il y a donc une quantité infinie de bibliothèques.

lien : fr Sources PHP

Comment installer une bibliothèque ?
auteur : Guillaume Rossolini
Une bibliothèque se présente généralement sous la forme d'une archive compressée.

La méthode habituelle d'installation est :
  • Télécharger l'archive compressée depuis le site officiel ;
  • Décompresser l'archive dans un répertoire de votre serveur ;
  • Vérifier que la bibliothèque fonctionne.

Qu'est-ce qu'une extension pour PHP ?
auteurs : Guillaume Rossolini, Hachesse
Une extension est un fichier DLL (Windows) ou so (Linux).

Ce fichier permet d'ajouter des fonctionnalités à PHP sous la forme de nouvelles fonctions, constantes et classes. L'avantage d'une extension sur une bibliothèque est que le code est généralement exécuté plus raidement. Un inconvénient est que toute la bibliothèque est chargée en mémoire depuis le lancement du serveur Web.

lien : faq Qu'est-ce qu'une bibliothèque ?
lien : fr Les meilleurs cours sur les extensions PHP

Quelles sont les extensions pour PHP ?
auteur : Guillaume Rossolini
Il est plus difficile de créer une extension qu'une bibliothèque, c'est pourquoi les principales extensions sont généralement hébergées sur le site de PHP.

Les extensions pour PHP sont divisées en trois catégories :
  • Les extensions qui font partie de la distribution standard ;
  • Les extensions PECL ;
  • Les extensions externes.
Les extensions standard sont utilisées très fréquemment par la majorité des développeurs PHP, elles sont donc incluses dans toutes les distributions de PHP.

Les extensions PECL sont habituellement moins sollicitées car elles répondent à des besoins bien plus spécifiques. Elles sont toutefois également disponibles sur le site de PHP.

Les extensions externes sont en fait toutes celles que le site de PHP ne répertorie pas. Il faut prendre garde avec ces extensions, car elles ne sont pas validées par le PHP Group. Leur installation est souvent largement plus complexe pour les utilisateurs de Windows, car la procédure de compilation n'est pas toujours bien détaillée et car les fichiers binaires ne sont pas compilés par le PHP Group. Certains groupes publient de très bonnes extensions qui ne sont pourtant pas proposées sur le site de PHP, il faut donc juger avec discernement...

lien : en Site officiel des extensions PECL
lien : en Extensions PECL pour les utilisateurs de Windows

Comment installer une extension pour PHP ?
auteurs : Hachesse, Guillaume Rossolini
L'installation d'une extension dépend de votre système d'exploitation.

Les instructions sont toujours données sur le site officiel, mais elles suivent habituellement cette démarche :
  • Compiler l'extension en fonction de votre version de PHP ;
  • Placer le fichier généré dans votre répertoire d'extensions PHP ;
  • Activer l'extension par une directive du fichier php.ini ;
  • Redémarrer le serveur Web si PHP est utilisé en module (pas nécessaire pour une utilisation en CGI) ;
  • Vérifier que l'extension apparaît dans phpinfo().

Pour charger une extension sous Windows, il y a 2 possibilités
  • Le chargement statique : Se fait par l'ajout du nom de l'extension à charger dans le fichier de configuration de PHP (php.ini) à la rubrique "Dynamic Extensions". Cette ligne doit prendre la forme "extension=modulename.extension". Par exemple, extension=php_ldap.dll permet de charger l'extension LDAP de PHP.
  • Le chargement dynamique : C'est un chargement d'une extension au cours de l'exécution d'un script PHP. Ce chargement se fait par la fonction dl(), et prend en paramètre le nom de l'extension.
    <?php dl("php_ldap.dll"); ?>
    
    Notes :
    • Le chargement à la volée n'est possible que si la directive enable_dl du php.ini vaut TRUE ;
    • le chargement à la volée d'extension prend du temps et doit donc être utiliser avec modération.
De plus dans les deux cas, les librairies doivent être regroupées dans le répertoire des extensions de PHP. Ce répertoire est celui indiqué par la directive "extension_dir" à la section "Paths and Directories" du fichier php.ini.

Exemple : extension_dir="C:\php\extensions"


Qu'est-ce qu'un framework ?
auteur : Guillaume Rossolini
Un framework est un ensemble de règles et de bibliothèques permettant à tous les développeurs qui l'utilisent, de coder de manière rapide et uniforme.

Le principal avantage d'utiliser un framework est de ne plus à avoir à se poser de questions sur la forme du code que l'on écrit, de telle manière que d'année en année le code n'est pas remanié, ce qui le rend pérenne.

La majorité des frameworks en profitent pour sélectionner ou pour développer des classes (wrappers) permettant au développeur de programmer plus rapidement, mais c'est majoritairement dans l'objectif d'uniformiser le code applicatif.

lien : fr Frameworks pour PHP : comment créer efficacement des applications web, par Pawel Kozlowski

Quels sont les frameworks pour PHP ?
auteur : Guillaume Rossolini
De même que les bibliothèques, de très nombreux développeurs ont mis en place leur propre framework au fil du temps, même sans le savoir. Un framework désigne avant tout une manière de coder, ainsi en l'absence d'un framework défini, le développeur créé le sien propre.

Cependant, quelques frameworks ont percé sur la scène internationale et ont reçu un très large accueil du public :
  • Zend Framework ;
  • symfony ;
  • CakePHP ;
  • Prado :
  • Seagull ;
  • etc.
lien : fr Rubrique Zend Framework : FAQ, cours, tutoriels, forum, blogs...

Comment installer un framework ?
auteur : Guillaume Rossolini
Les instructions dépendent totalement du framework cible.


Quelle différence y a-t-il entre une bibliothèque, une extension et un framework ?
auteur : Guillaume Rossolini
La seule différence entre une bibliothèque et une extension est le fait que seule l'extension est compilée en fichier binaire, tandis que la bibliothèque est simplement constituée de scripts. Les deux offrent une extension au langage PHP.

Si une bibliothèque venait à être réécrite en code C puis compilée en fichier binaire, on pourrait parler d'extension.

Un framework et une bibliothèque/extension ont de nombreuses choses en commun, mais le framework est plus complet. Un framework utilise généralement plusieurs bibliothèques/extensions et il impose des règles d'écriture du code, tandis que les bibliothèques/extensions proposent simplement de nouvelles fonctionnalités.

Un framework n'est jamais compilé en fichier binaire, puisqu'il s'agit avant tout de conventions d'écriture du code.


Comment récupérer le contenu d'un fichier avec cURL ?
auteur : Julp
cURL présente les avantages d'être plus facile à utiliser et de pouvoir accéder à un "fichier" par son URL indépendamment de la valeur de la directive allow_url_fopen (ce qui n'est pas le cas de fopen, file, file_get_contents, ...). Il faut, toutefois, qu'elle soit installée.
Exemple d'utilisation :
$ch = curl_init('http://www.developpez.com');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_NOBODY, FALSE);
//curl_setopt($ch, CURLOPT_HEADER, TRUE) ; // Pour obtenir en plus les en-têtes 
$response = curl_exec($ch);
curl_close($ch);
echo $response;


Consultez les autres F.A.Q.


Les sources présentés sur cette page sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright ©2003  Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.

Vos questions techniques : forum d'entraide Accueil - Publiez vos articles, tutoriels, cours et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones. Nous contacter - Copyright 2000..2005 www.developpez.com