Une introduction à PEAR
- Date de publication
- 24/mai
2001 - Tags
Traduction de l’article de Joao Prado Maia publié initialement le 24 mai 2001 sur ONLamp.com, de O’Reilly.
Qu’est-ce que PEAR ? Et pourquoi devrais-je m’en préoccuper ?
Le projet PEAR (NDT : PHP Extension and Application Repository) a été lancé par Stig S. Bakken pour créer un outil similaire au CPAN de Perl. Son but principal est de devenir un entrepôt pour des extensions et scripts PHP. Le but le plus ambitieux du projet est de tenter de définir des standards qui puisse aider les développeurs à écrire du code portable et réutilisable.
De la documentation sur le projet commence à apparaître sur Internet, en concéquence certainement de sa popularité grandissante. Une documentation de départ peut déjà être trouvée dans le manuel officiel de PHP et sera augmentée.
PEAR est encore particulièrement en travaux, notamment le « PEAR installer » et le site dédié, et il devrait beaucoup croître dans les mois à venir. Il y a de nombreuses discussions sur la mailing-list des développeurs de PHP à propos de l’usage de PEAR dans les versions futures pour gérer le nombre croissant d’extensions C et aussi de l’usage du « PEAR installer » comme interface pour que les utilisateurs téléchargent et installent des extensions PHP.
Tout cela sans mentionner la librairie de scripts PHP de PEAR, qui est souvent considéré comme une des plus propre et bien conçues disponible actuellement pour PHP. L’un de ses composants les plus populaires est PEAR ::DB, la librairie d’abstraction de base de données créée pour ce projet. Bakken travaille même au portage des classes et fonctions principales en une extension C pour rendre le composant aussi rapide que possible.
Ce nouveau projet deviendra sûrement l’un des aspects les plus importants de PHP dans le futur, autorisant les développeurs à partager du code en utilisant le site de PEAR et en donnant aux utilisateurs l’opportunité de télécharger et installer des extensions et scripts PHP.
Comment puis-je débuter avec PEAR ?
Comme mentionner précédemment, PEAR continue à évoluer et à s’améliorer. Cependant, un certain nombre de composants sont maintenant utilisables. Le plus populaire est PEAR ::DB, qui permet au développeur d’écrire du code qui puisse être utilisé avec différents gestionnaires de bases de données. Par exemple, un développeur pourrait écrire un script qui insèrerait un enregistrement dans une table, et il fonctionnerait avec MySQL, PostgreSQL et Oracle.
Ainsi, l’exemple ci-dessous pourrait être utiliser avec tous les types de gestionnaires de bases de données (NDT : voir l’erratum en fin de page) :
<?php
// Include the appropriate PEAR classes
require_once("DB.php");
$dsn = array(
'phptype' => 'mysql',
'hostspec' => 'localhost',
'database' => 'test_db',
'username' => 'test_user',
'password' => 'test_password'
);
$dbh = DB::connect($dsn);
$stmt = "SELECT id, name FROM examples ORDER BY id";
$result = $dbh->simpleQuery($stmt, DB_FETCHMODE_ASSOC);
if ($dbh->numRows($result) > 0) {
$data = (object) $dbh->fetchRow($result, DB_FETCHMODE_ASSOC);
echo "id => $data->id<br>n";
echo "name => $data->name<br>n";
}
?>C’était juste un très simple exemple pour montrer à quoi ressemblerait le code avec une librairie d’abstraction comme PEAR ::DB.
Un nouveau chapitre a été récemment ajouté au manuel de PHP, mais il est encore incertain si ce manuel contiendra la documentation complète de tous les composants de PEAR, ou si un nouveau manuel sera créé uniquement pour les composants de PEAR.
Procédures d’installation
Installer PEAR est en fait très simple, et je vais expliquer comment installer la dernière version du CVS de PEAR, qui change si rapidement.
Note : Le mécanisme interne de gestion de l’entrepôt changera probablement dans le futur. Pour l’instant, les composants et librairies sont stockés dans le même arbre CVS que PHP, ce qui pose des problèmes pour gérer à la fois les entrepôts et développeurs de PHP et de PEAR. Dans un futur proche, il est prévisible que PEAR sera détaché dans son propre module. Ce module existe, mais la plupart des composants sont encore dans l’ancien.
Installer PEAR à partir du CVS
Si vous n’avez jamais entendu parler de CVS, jetez un oeil à sa documentation. Ce n’est pas une technologie difficile d’usage, mais s’y accoutumer prend du temps.
En supposant que vous avez le client CVS standard installé sur votre machine, vous devrez suivre ces étapes :
1. Ouvrez une fenêtre de terminal (rxvt, xterm, ou autre)
2. Tapez les commandes suivantes :
cvs -z3 -d :pserver:cvsread@cvs.php.net:/repository login
Password: [Entrez 'phpfi' comme mot de passe ici]
cvs -z3 -d :pserver:cvsread@cvs.php.net:/repository co php4
[Cela va créer un nouveau répertoire 'php4']
cd php4
cvs -z3 -d :pserver:cvsread@cvs.zend.com:/repository login
Password: [Entrez 'zend' comme mot de passe ici]
cvs -z3 -d :pserver:cvsread@cvs.zend.com:/repository co Zend TSRM
[Cela va créer deux nouveaux répertoire dans 'php4', 'Zend' et 'TSRM']
./buildconfVoilà. Lancer buildconf devrait créer le script configure standard qui peut être utilisé pour définir vos paramètres pour PHP. Pour une installation normale, PEAR devrait être automatiquement installé dans /usr/local/lib/php, mais vous pouvez installer les fichiers manuellement en allant dans ’php4/pear’ et en lançant make install-su en tant que superuser.
Ensuite, vous devriez ajouter le répertoire racine de PEAR à l’include_path de votre fichier php.ini. Le chemin par défaut devrait être /usr/local/lib/php, mais cela peut être ailleurs si vous avez effectué des modification manuelles de vos paramètres de configuration.
Débuter avec PEAR
Les composants de PEAR vont de l’abstraction de base de données à la gestion de cache, ce qui fait de PEAR plus qu’une simple librairie, c’est un nouveau standard pour écrire du code PHP portable et propre. L’une des plus importantes choses à faire pour un débutant avec PEAR est de lire les styles de codage PEAR qui sont publiés dans le manuel de PHP.
Je donnerais quelques conseil pour commencer à travailler avec PEAR ::DB, car c’est un des composant de PEAR les plus populaires. Vous pouvez trouver des exemples et de l’aide pour utiliser PEAR ::DB en suivant ces étapes :
- Cherchez des réponses à vos question sur MARC, dans pear-dev ou pear-general.
- Lisez les scripts de tests unitaires fournis avec le code source de PEAR. L’emplacement de ces scripts peut être trouvé dans le répertoire où se trouve votre image CVS de PHP. Dans mon cas, c’est /home/jpm/php4/pear/DB/tests/.
- Parcourez l’excellent tutoriel PEAR ::DB de Tomas V. V. Cox. J’espère que cet article a jeté un peu de lumière sur le mystérieux PEAR, et qu’il vous a fourni des informations utiles sur l’un des développements les plus prometteurs de la communauté PHP.
Amusez-vous !
Joao Prado Maia est développeur Web à San Francisco. Il a plus de quatre ans d’expérience en développement d’applications web et aime apprendre de nouvelles technologies et de nouveaux langages de développement.
Commentaires
Partager
Pour faire un lien vers cet article, vous pouvez utiliser soit son URL canonique soit son URL courte :
Billets avec les mêmes tags
- Le Journal du Net présente phpMyChat !
- Guide du débutant pour PEAR DB
- Chronique d’une licence non annoncée
- Citation de Sterling Hughes
Derniers billets
-
Faut-il continuer à supporter Internet Explorer 6 ?
Article initialement publié dans le blog de Clever Age.
On ne va pas ergoter sans fin, tout le monde doit maintenant savoir que Internet Explorer 6 — IE6 pour les intimes — est un navigateur obsolète et dangereux. Et pourtant, certains continuent à l’utiliser. Faut-il les en dissuader, refuser de leur fournir son support, aller même jusqu’à leur empêcher l’accès, ou faut-il continuer à supporter (les faiblesses de) ce navigateur ?
- Date de publication
- 22/juillet
2010 - Tags
-
Les inscriptions à Paris Web 2010 sont ouvertes !
Paris Web 2010, c’est la cinquième édition de ce rendez-vous français annuel, devenu incontournable, pour se tenir informé des bonnes pratiques de développement Web. Go go go !
- Date de publication
- 2/juillet
2010 - Tags
-
Faciliter la reprise de tweets (les retweets) à l’ancienne sur Twitter
Même si Twitter a mis en place depuis maintenant un certain temps un mécanisme natif de retweets1, je préfère souvent continuer à utiliser les « RT » traditionnels, qui laissent la possibilité de commenter le tweet initial, ce que ne permet pas le retweet officiel. Une règle qui me paraît essentielle pour faciliter le retweet à l’ancienne, c’est de prévoir une taille de tweet suffisamment faible pour que le retweeteur voit son travail facilité, surtout si le tweet initial ne contient que très peu de mots inutiles.
- Date de publication
- 14/juin
2010 - Tags

Derniers commentaires
R03ER7 sur Le Jailbreak de l’iPhone ou de l’iPod Touch est-il légal ? : « Jailbreaker ne veut pas dire voler » mais plutôt « Permettre l’installation d’applications quand (...)
Sur Citation d’Oscar Wilde : sauf qu’il me semble qu’en vrai c’est une phrase de A de St Exupery !
Scandale sur Afficher les favicon dans la barre personnelle de Firefox sous Mac OS : Pour ceux qui, comme moi, manquent de place dans leur barre personnelle, j’ai aussi ajouté le (...)
Scandale sur Afficher les favicon dans la barre personnelle de Firefox sous Mac OS : merci pour le tuyau, ça marche. manque juste dans le tutoriel le chemin ou mettre le fichier, (...)
Nicolas Steinmetz sur Faut-il continuer à supporter Internet Explorer 6 ? : Parce que certaines entreprises sont encore sous WinNT / Win2000 à cause d’applications métiers ? (...)
ThierryD sur Prendre des éclairs (d’orage) en photo : Bonjour, Je me permet d’intervenir dans ce post pour vous faire part de ma technique pour (...)
ventrea sur Backup d’un Mac sur un NAS facile et sans bidouille, c’est possible ? : Time machine est pris en chagre par les dernières versions de firmware sur les nas Qnap (...)
Sur Une sauvegarde de fichiers en ligne très simple pour pas cher : Oui, j’ai le même genre et c’est vraiment pratique :) : https://www.axalot.fr
Sur Google Chrome sur Mac, bilan mitigé : > Pas de barre de titre, donc je ne connais pas le nom de la page dès que j’ai plus de 5 onglets (...)
Maurice sur Backup d’un Mac sur un NAS facile et sans bidouille, c’est possible ? : Par contre, je ne pense pas que ça résolve le problème de performance lorsque la taille du backup (...)