Introduction 14• Double Poche PHP & MySQL Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark... Pourtant, les inventeurs de langage,ces forgerons de la syntaxe,
Trang 220-22, rue des Petits-Hơtels
75010 PARIS
1 re Edition - Mars 2009
Toute représentation ou reproduction, intégrale ou partielle, faite sans le consentement de MICRO APPLICATION est illicite (article L122-4 du code de
la propriété intellectuelle).
Cette représentation ou reproduction illicite, par quelque procédé que ce soit, constituerait une contrefaçon sanctionnée par les articles L335-2 et sui- vants du code de la propriété intellectuelle.
Le code de la propriété intellectuelle n’autorise aux termes de l’article L122-5 que les reproductions strictement destinées à l’usage privé et non destinées à l’utilisation collective d’une part, et d’autre part, que les analy- ses et courtes citations dans un but d’exemple et d’illustration.
Avertissement Les informations contenues dans cet ouvrage sont données à titre indicatif et
aux utilisateurs n’ont aucun caractère exhaustif voire certain A titre d’exemple non limitatif,
cet ouvrage peut vous proposer une ou plusieurs adresses de sites Web qui
ne seront plus d’actualité ou dont le contenu aura changé au moment ó vous
en prendrez connaissance.
Aussi, ces informations ne sauraient engager la responsabilité de l’Editeur La société MICRO APPLICATION ne pourra être tenue responsable de toute omis- sion, erreur ou lacune qui aurait pu se glisser dans ce produit ainsi que des conséquences, quelles qu’elles soient, qui résulteraient des informations et indications fournies ainsi que de leur utilisation.
Tous les produits cités dans cet ouvrage sont protégés, et les marques sées par leurs titulaires de droits respectifs Cet ouvrage n’est ni édité, ni pro- duit par le(s) propriétaire(s) de(s) programme(s) sur le(s)quel(s) il porte et les marques ne sont utilisées qu’à seule fin de désignation des produits en tant que noms de ces derniers.
dépo-ISBN : 978-2-300-017599
Couverture réalisée par Emilie Greenberg
Tél : 01 53 34 20 20 Fax : 01 53 24 20 00 http://www.microapp.com
Retrouvez des informations sur cet ouvrage !
Rendez-vous sur le site Internet de Micro Application
www.microapp.com Dans le module de recherche, sur la page d’accueil du site, entrez la référence
à 4 chiffres indiquée sur le présent livre.
Vous accédez directement à sa fiche produit.
1759
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Trang 3Cette collection fournit des connaissances essentielles sur un sujet donnésans jamais s’éloigner de leur application pratique Les volumes de lacollection sont basés sur une structure identique :
¶ Les puces introduisent une énumération ou des solutions alternatives
1. La numération accompagne chaque étape d’une technique
Il s’agit d’informations supplémentaires relatives au sujet traité.
Met l’accent sur un point important, souvent d’ordre technique, qu’il ne faut négliger à aucun prix.
Propose conseils et trucs pratiques.
Conventions typographiques
Afin de faciliter la compréhension des techniques décrites, nous avonsadopté les conventions typographiques suivantes :
¶ Gras : menu, commande, boîte de dialogue, bouton, onglet.
¶ Italique : zone de texte, liste déroulante, case à cocher, bouton radio.
¶ Police bâton : touche, instruction, listing, texte à saisir
¶ ✂ : indique un retour ligne volontaire dû aux contraintes de la mise enpage
Trang 5PHP & MySQL
Trang 71 Introduction 17
1.1 Naissance de ce langage 18
1.2 Evolution du langage 18
1.3 Intérêt de ce langage 19
La liberté 19
La portabilité 20
La facilité 21
Un peu d’histoire 21
1.4 Fonctionnement 22
1.5 Des chiffres 23
2 Ma première page PHP 25
2.1 HTML 26
2.2 Le cheminement d’un apprenti webmestre 27
2.3 Quelques notions de HTML 28
Les images 32
Les liens 33
Les tableaux 35
Les formulaires 38
Les cadres ou frames 40
2.4 Les outils 43
Les logiciels d’édition de code PHP 43
EasyPHP 45
Autres logiciels 46
L’hébergement 47
2.5 Ma page 48
Les commentaires 51
PHPinfo() 51
3 Les clefs du PHP 53
3.1 Variables scalaires 54
Le nom de variable 54
Le type des variables 55
Les guillemets 57
Les constantes 60
Les tableaux 63
3.2 Les opérateurs 67
Les opérateurs arithmétiques 67
Les opérateurs d’affectation 67
Les opérateurs de bits 68
Les opérateurs de comparaison 68
Les opérateurs de contrôle d’erreur 70
Les opérateurs unaires 71
Les opérateurs logiques 72
Priorité des opérateurs 72
Trang 83.3 Les structures de contrôle 74
Les tests 74
3.4 Les boucles 77
La boucle while 78
La boucle do while 79
La boucle for 80
Foreach 82
Break et continue 84
3.5 Les fonctions de PHP 85
Chaînes de caractères 86
Variables 91
Date et heure 91
Mathématiques 95
3.6 Les fonctions 97
Le rôle de la fonction 97
La portée d’une variable dans une fonction 101
Les fonctions imbriquées 101
Les fonctions récursives 102
Afficher vos date et heure locales 103
3.7 Récapitulatif pour votre application 105
4 MySQL en action 107
4.1 Le fichier face à la base de données 108
4.2 Conception de l’application du club 108
4.3 Création d’une table 109
4.4 Modification d’une table 113
4.5 Les clés étrangères 114
4.6 Les jointures de tables 115
4.7 Les types de données MySQL 116
4.8 La sauvegarde de la base 118
4.9 Les formulaires 119
L’inscription au club 119
4.10 Les fonctions du langage PHP pour MySQL 133
4.11 La vérification des formulaires 133
La vérification avec Javascript 134
Le code PHP 141
Variables prédéfinies liées au chemin ou à l’URL 145
4.12 Tout sur un seul fichier : oubli.php 146
La réflexion 146
La plate-forme commune 147
Les variables comme marqueurs 147
4.13 Récapitulation de la syntaxe des requêtes 151
4.14 Les procédures stockées 156
4.15 SQLite 156
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Trang 95 Le PHP et l’approche objet 159
5.1 Qu’est-ce que l’objet ? 161
5.2 L’héritage 163
5.3 Surcharger une méthode 165
5.4 Le polymorphisme 166
5.5 Passer un argument par référence 167
5.6 PHP 5 et l’objet 168
Le pointeur 168
Les privilèges 168
Le constructeur et le destructeur 168
6 L’internaute est d’abord une personne 171
6.1 L’authentification 172
Le processus 175
La première authentification 176
La vérification de l’identité de l’internaute 178
Le cookie 179
La conservation des données personnelles 183
6.2 Le tableau de bord du membre 184
Modifier ou supprimer un profil 185
6.3 Le tableau de bord d’administration du site 190
L’accès restreint d’un répertoire avec htaccess 191
Le tableau de bord 192
6.4 Des aménagements dans l’application 198
6.5 En-têtes HTTP et variables globales 201
En-têtes HTTP 201
Variables PHP 204
Variable d’environnement 205
6.6 Récapitulation 207
7 Des algorithmes, des outils et des fonctions 209
7.1 Tableaux 210
Types d’extraction 212
Le pointeur 213
Le tri 213
7.2 Calendriers, dates et autres agendas 218
Durée après une date ou avant une date 218
Affichage d’un calendrier 219
Un agenda à jour 223
7.3 Un miniforum sur chaque page 236
7.4 Sondages et concours 239
Un sondage 240
Un concours 247
Les fonctions concernant le système de fichiers 249
7.5 Compteurs et statistiques 254
Trang 10Créer le compteur quotidien 254
La page d’affichage des statistiques de page 256
7.6 Le chariot électronique 258
La promotion 259
Les prix 260
Les tables à créer 261
L’action "acheter un produit" 261
L’action "voir le contenu du chariot" 262
L’action "commander les articles" 263
7.7 Un magazine 265
La réflexion 266
Le formulaire pour entrer les images 267
7.8 Une galerie photo 270
Les données EXIF 272
8 Moteurs de recherche et expressions rationnelles 275 8.1 Un annuaire de liens 276
Analyse du besoin 276
Réflexions 277
Élaboration des applications 279
Moteur de recherche 295
8.2 Les expressions rationnelles 301
La méthode 301
POSIX 302
Les fonctions compatibles Perl 307
8.3 Conclusion 319
9 Parsez-vous XML ? 321
9.1 Un peu d’histoire 322
9.2 Le fichier XML 323
L’espace de nommage 323
Les éléments et les attributs 323
9.3 La DTD 326
Les différents types de déclarations 326
9.4 Le XSLT 328
L’espace de nommage 328
La feuille de style 329
Les modèles 330
9.5 Le fichier PHP 332
9.6 Magasin électronique en XML 332
La conception de la boutique 333
Création du fichier XML 333
Création d’un nouveau fichier CSV à partir d’un fichier XSLT 335
Le fichier XSLT de la boutique 336
Le fichier PHP de la boutique 339
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Trang 119.8 Conclusion 342
10 Les frameworks ou cadriciels PHP 345
10.1 Une méthodologie de travail 347
10.2 L’architecture Modèle/Vue/Contrôleur 348
Modèle 348
Vue 348
Contrôleur 349
10.3 Xataface, donnez un visage humain à votre base de données 349
L’architecture 350
Les tables 352
Application Déléguée dans le répertoire conf 354
Conclusion 354
10.4 CakePHP, c’est du gâteau 355
10.5 JOOMLA, le meilleur gestionnaire de contenu 357
Drupal contre Joomla 360
10.6 Conclusion 361
11 Mettre de l’ordre 363
11.1 Avant 365
11.2 Après 366
11.3 Le débogage 366
11.4 Sachez anticiper 369
12 La traversée de l’écran 371
12.1 La communication sur le Web 373
L’humour 374
Le soutien 374
Les émoticônes 375
La nétiquette 375
La mise à jour régulière 376
La navigation 376
Le référencement 377
12.2 Conclusion 377
13 PHP 6 en ligne de mire 379
13.1 Unicode 380
13.2 Le paramètre Register Globals n’est plus disponible 381
13.3 Les Magic Quotes sont retirées 382
13.4 Le Safe Mode n’existe plus 382
13.5 Utiliser Freetype 2 et GD 2 383
13.6 Plus de HTTP_*_VARS 383
Trang 1213.8 Les ajouts 383
14 Annexe 387
14.1 PHP 388
PHP Hypertext Preprocessor 388
PHP Builder, the Resource for PHP developers 389
PHP Index, la Passerelle française des technologies PHP 389
Nexen 390
PHP Facile 391
ASP-PHP.NET 391
PHP France 392
PHP Heaven 393
AFUP 393
14.2 MySQL 395
MySQL 395
Nexen 396
14.3 Autres 396
Apache 396
Easyphp 397
14.4 Outils 398
Éditeurs 398
FTP 400
Personnels 401
14.5 Applications en PHP 403
14.6 Les portails 405
Typo3 405
Spip 405
14.7 Hébergement 405
Gratuit 405
Payant 406
Noms de domaine 407
14.8 Référencement 407
Référencement 2000 407
14.9 HTML et Javascript 407
All HTML 407
Le Journal du net 408
Comment ça marche 408
14.10.Les groupes de news 408
Pour écrire à l’auteur de ce livre 408
15 Index 409
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Trang 13Ce livre s’adresse à tous les publics Que vous soyez débutant, webmestre
ou programmeur, vous tirerez profit de cet ouvrage en vous amusant Sivous avez l’intention de créer un site Internet mais que vous vous sentiezdémuni, incapable, dépassé, PHP & MySQL en ligne constitue le débutidéal de votre aventure Les pages qui vont suivre sont issues de mapratique quotidienne d’analyste-programmeur et de webmestre J’ai veillé
à parsemer ce livre d’astuces et d’exemples complets avec des tions claires et une évolution progressive
explica-Pour cette deuxième édition, nous abordons PHP 5, qui entame une vraierévolution dans la manière d’appréhender le code et la grammaire PHP 5garde cependant une compatibilité ascendante qui garde opérationnellesdes fonctions obsolètes Les points saillants de cette révolution sont lerenforcement de la programmation objet, l’arrivée d’une nouvelle base de
données SQLite et un vrai espace pour le XML.
Le langage PHP est un vrai continent, composé, pour la version 4, de plus
de 2 700 fonctions et de 80 extensions Au cours de notre exploration,vous apprendrez des méthodes et maîtriserez progressivement les outilsdans le but de créer un site interactif Vous étudierez donc les principalesfonctions et notions du langage PHP À travers des exemples, vous verrezcomment créer facilement vos applications En douceur et sans vousencombrer de notions superflues, vous assemblerez ces applicationssimples pour réaliser une application "complexe"
Ce livre est fondé sur mon expérience En 1994, j’étais vendeur de vidéonumérique dans une grande surface informatique (Surcouf) ; c’est là quej’ai découvert l’Internet À cette époque, il existait peu de sites enfrançais J’ai d’ailleurs réalisé mon premier site en anglais Après avoirenrichi ce site et arpenté longtemps l’Internet, j’ai voulu aller plus loin.C’est là que j’ai découvert le langage Perl, sous la forme d’un scriptcapable de traiter des données de formulaire envoyées par e-mail Parsimple curiosité, j’ai acheté un livre, puis deux… et j’ai été happé par laprogrammation Seul, j’ai donc réalisé des algorithmes de plus en pluscomplexes et acquis des méthodes
Double Poche PHP & MySQL• 13
Trang 14Après cinq ans de pratique, je suis entré en 1999 à l’IUT de Vallée pour étudier d’autres méthodes de programmation et aborder Java
Marne-la-et le langage objMarne-la-et À la sortie de l’université, mon diplơme en poche, j’aiintégré Nexus Développement, ó j’ai pratiqué le langage PHP à tempscomplet pour le Web et expérimenté les bonnes (et mauvaises) méthodes
de programmation
Pour restituer un savoir, il est nécessaire de l’expérimenter, c’est pourquoij’ai emprunté pour vous des chemins que je n’avais jamais foulésauparavant De ce fait, ce livre est utile pour des programmeurs chevronnés
Au long de cet ouvrage, j’ai eu à cœur de rester accessible à tous Quelsque soient votre âge et vos connaissances, vous pourrez programmer Lacomplexité réside non pas dans le langage PHP — l’outil est simple —,mais dans la conception de votre programme, dans son architecture et sarichesse
Un langage est fait pour la communication hommes/hommes, hommes/machines et machines/machines La plus grande compétence d’unanalyste-programmeur reste sa capacité à concevoir, à communiquer et àadapter son outil L’outil est au service d’une fonction Les langagesdeviennent trop souvent des chapelles de spécialistes, de savantes cons-tructions mentales qui perdent de vue leur fonction et brillent uniquementdans les yeux des experts Périodiquement, des langages tombent dansl’oubli parce qu’ils ont oublié la vie L’informatique, comme le droit ou
la médecine, peut malheureusement devenir une affaire d’experts enjargon Ainsi, certains spécialistes sont à même de manipuler un clientpour le faire payer des prestations interminables Le langage PHP estdifférent
J’aimerais que ce langage soit enseigné à l’école car les élèves peuventprogrammer facilement et obtenir des résultats immédiats, ce qui lesencourage à approfondir Tout langage de programmation enseigne larigueur et la structure La programmation informatique ouvre sur lesmathématiques, bien sûr, par la logique, mais aussi sur la grammaire et larédaction, par son souci de précision et la nécessité de communiquerconvenablement Il est indispensable d’être compris par l’internaute sur
un site mais également par le collègue qui reprendra le programmederrière vous
Introduction
14• Double Poche PHP & MySQL
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Trang 15Je dédie ce livre à mon père, Maurice, qui a toujours encouragé mon gỏtd’apprendre, et à mon filleul cambodgien, Touch Ra, qui un jour, jel’espère, pourra lire cet ouvrage et s’amuser avec du code informatique,s’il le souhaite.
Introduction
Double Poche PHP & MySQL• 15
Trang 17Introduction
Trang 18PHP Encore un sigle comme l’informatique les affectionne On fait souventdes plaisanteries sur leur signification Pourtant, les inventeurs de langage,ces forgerons de la syntaxe, possèdent aussi de l’humour, c’est pourquoifréquemment, surtout dans la communauté du Libre (ou Open Source), lenom du langage est fondé sur une plaisanterie pour initiés (private joke).Ainsi, comme Java signifie café en argot américain, il faut croire que lacafetière a fourni le carburant aux créateurs de ce langage PHP est d’abord
le sigle de Personal Home Page Rasmus Lerdorf, son concepteur, s’estsouvenu des fonctions récursives et l’a baptisé (PHP Hypertext processor) Sivous développez le sigle, vous générez une boucle infinie, crainte desprogrammeurs PHP signifie PHP Hypertext Processor Hypertext ProcessorHypertext Processor… C’est une fonction "Vache qui rit", suivant la logique
de cette boîte de fromage célèbre qui affiche une vache avec des boîtescomme boucles d’oreille affichant une vache avec des boîtes… Justement,les boucles sont les éléments qui caractérisent un langage de programmation
Reportez-vous au chapitre intitulé Les clefs du PHP pour obtenir
plus de détails sur la fonction récursive et les boucles.
Le langage PHP est né en 1994 d’un programme en langage Perl écrit parRasmus Lerdorf pour analyser les visites de son CV en ligne Il réécritl’application en langage C puis ouvre son programme à la communauté duLibre Ainsi, il pourra désormais compter sur l’aide de nombreuxdéveloppeurs Son application PHP fusionne avec un moteur de traitement
de formulaires, FI, ce qui donne la version 2 Avec la version 3, lesfonctions deviennent nombreuses et la popularité grandit
Le langage PHP a encore beaucoup évolué Nous en sommes actuellement
à PHP 6 Les usagers ne sont pas obligés de prendre le train à chaqueavancée technique pour plusieurs raisons :
¶ De nombreux sites en production sont faits en PHP 3 ou PHP 4 etfonctionnent très bien ;
1 Introduction
18• Double Poche PHP & MySQL
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Trang 19¶ Les hébergeurs de sites proposent souvent une configuration PHP 4 ;
¶ Le langage objet demande un raisonnement plus élaboré
Plusieurs raisons peuvent pousser à changer de version :
¶ Une plateforme ou framework passe à cette version et nous intéresse ;
¶ Par défi et gỏt d’apprendre de nouvelles syntaxes ou cadres detravail
Reportez-vous au chapitre intitulé Les frameworks ou cadriciels
PHP pour obtenir plus de détails sur le sujet.
1.3 Intérêt de ce langage
PHP est libre, portable et facile à comprendre C’est un langage pour tous
Ce n’est pas un langage ésotérique destiné uniquement aux nels, avec un jargon incompréhensible Certains langages dits complexessont à la mode car leur complexité permet à des entreprises de passerbeaucoup de temps sur des applications cher payées Le langage PHP estsuffisamment souple, robuste et rapide pour intéresser les professionnels
profession-et sa richesse d’outils en fera, dans les années qui viennent, le langageprivilégié de toutes les entreprises
La liberté
PHP est gratuit Ainsi, la plupart des hébergeurs gratuits le proposent avec
la base de données MySQL, gratuite elle aussi Libre signifie également
que toute personne peut l’enrichir, à condition d’en faire profiter tout lemonde gracieusement À l’intérieur de la communauté du Libre, leslicences déclinent des droits d’auteur distincts En effet, Libre ne signifiepas que tout est permis ni que tout est gratuit
Le langage PHP évolue constamment grâce à une communauté de 200développeurs environ La documentation est continuellement mise à jour etdes milliers de sites à travers le monde s’y consacrent en publiant desarticles, des forums, des astuces ou en proposant des applications gratuites
Le langage PHP est porté par une vague de popularité qui ne cesse de croỵtre.Nous espérons à travers cet ouvrage participer modestement à son essor
Intérêt de ce langage
Double Poche PHP & MySQL• 19
Trang 20La communauté du logiciel libre (communauté
du Libre)
En 1969, les chercheurs ressentent le besoin de partager leurs travaux Ils créent donc un réseau de machines Le système d’exploi- tation Unix est inventé la même année Il définit l’ordinateur comme un nœud de communication Ce système fonctionne sur tout type de machine Les deux inventions constituent les fondations d’Internet.
La coopération engendrée par ce réseau de chercheurs accélère le rythme des découvertes et des inventions.
Vers la fin des années 70 se créent les grandes entreprises de logiciels.
Le droit sur le logiciel apparaît, posant que le logiciel appartient à celui qui l’a créé L’auteur (individu ou société) a le droit exclusif de le copier,
de le distribuer et de vendre une licence à un utilisateur La licence donne à l’utilisateur le droit d’installer le programme sur sa machine, de l’exécuter et d’en faire une copie de sauvegarde.
Les éditeurs de logiciels dissimulent le code source pour empêcher quiconque de se servir de leurs connaissances et d’en faire un produit concurrent Ainsi, une guerre des standards se déclenche avec, à la clef, des profits extravagants Dans cette course, seuls les plus gros survivent, ce qui nuit à la concurrence et rend le marché dépendant de certains produits.
Un chercheur qui partageait ses découvertes, Richard Stallman, çoit que ses connaissances sont utilisées par des entreprises qui vendent leurs produits sans qu’il en reçoive un quelconque retour Il imagine alors la GPL (General Public License) Cette licence accorde à l’utilisateur le droit de diffusion, d’utilisation et de modification Une clause supplémentaire donne l’obligation d’utiliser la même licence, que
s’aper-le logiciel soit modifié ou non.
En 1991, le Finlandais Linus Thorvalds invente Linux, un système d’exploitation libre et gratuit Le combat actuel contre le brevet logiciel a lieu dans ce contexte car son application signifierait, à terme, la mort du Libre.
La portabilité
PHP peut être exécuté sur n’importe quelle machine Les programmes quevous créerez dans ce livre sont exécutables sur Unix, Linux, Windows ouMacintosh Cette caractéristique vous affranchit des décisions prises parMicrosoft ou Apple et sécurise l’avenir de votre application
1 Introduction
20• Double Poche PHP & MySQL
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Trang 21La facilité
PHP peut être abordé par tous D’une part, il est gratuit et enrichicontinuellement par de nombreux développeurs (200 environ) D’autrepart, il est simple de commencer à programmer en langage PHP Tout celajoue un grand rôle dans sa popularité Le fait qu’il soit soutenu par ungrand nombre de développeurs assure une évolution continuelle etfavorise l’intégration des dernières évolutions en matière de langageinformatique
Ce langage est simple Vous commencez et obtenez immédiatement unrésultat Cela permet à chacun d’apprendre à son rythme (comme vous leverrez à travers ce livre) et d’intégrer la connaissance des fonctions etextensions au gré de ses envies
Un peu d’histoire
Le langage PHP est issu principalement du langage Perl, il s’appuie doncsur le type string, ou chaîne de caractères Le string en anglais est le fild’un collier de perles Dans le langage C qui est l’ancêtre de la plupart deslangages utilisés actuellement, il n’existe pas de type string Seulsexistent les caractères comme A ou b… Une phrase est alors un tableau decaractères avec le premier caractère dans la première case et le chiffre 0dans la dernière case, pour terminer la chaîne Une string est un collier
de caractères, ce qui est assez éloigné de la manière dont nous voyons lesmots qui sont de vraies unités du langage Le langage Perl a été conçupour simplifier les règles qui présidaient à l’écriture de langages deprogrammation Le principe était de rapprocher l’écriture du code dulangage naturel, c’est-à-dire de la manière dont l’humain s’exprime Lelangage Perl a donné naissance au langage PHP tandis que d’autreslangages ont suivi d’autres routes
Le langage PHP, à partir de sa base Perl et C, a emprunté la conceptionorientée objet au langage Java (dans la version 3) Le principal objectifd’un langage objet est la réutilisation de briques de programmationautonomes et portables dans plusieurs programmes Ce langage est dérivé
du code C++, donc du langage C La démarche des concepteurs deJava procède de la même constatation : le langage C++ est lourd àmanipuler, il fallait donc le simplifier et en sécuriser l’utilisation Lesconcepteurs créent le langage Java sous l’égide de Sun Microsystems Le
Intérêt de ce langage
Double Poche PHP & MySQL• 21
Trang 22code Java n’a pas la souplesse du langage PHP, c’est pourquoi un morceau
de programme en langage PHP qui prend quinze minutes à concevoir et àécrire demandera plus d’une heure en langage Java Les programmeursJava disent du langage PHP que c’est un langage de “bidouille” On peuteffectivement faire tout et n’importe quoi Ce que les programmeurs enlangage PHP prennent comme un compliment Les deux langages tendent
à se rapprocher, du moins, le langage PHP peut maintenant, grâce à desbibliothèques, utiliser des classes Java Le langage PHP est métissé detoutes ces cultures
Dans ce livre, nous n’aurons pas la place d’aborder l’aspect tion objet du langage PHP, le but de cet ouvrage étant de vous faire entrerdirectement dans le langage PHP pour résoudre n’importe quel problèmeposé à un programmeur Par contre, dans l’articulation des fichiers PHP(l’architecture de l’application), nous nous inspirerons de la programma-tion objet Il vous suffira ensuite d’apprendre la syntaxe et de pratiquerPHP pour maỵtriser cet aspect du langage La version 5 du langage PHPdéveloppera cet aspect La caractéristique du langage PHP est de garderune compatibilité ascendante Ainsi, certaines fonctions ont changé denom mais l’ancien nom est toujours opérationnel Tout cela fait du langagePHP un langage polymorphe Nous le comparerons à une encyclopédie.Pour chaque problème posé, il existe plusieurs approches Vous pouvezutiliser tout ce qui fonctionne à partir du moment ó vous gardez unecohérence et une rigueur N’oubliez pas en effet d’être rigoureux car lelangage PHP ne vous obligera pas à suivre des chemins balisés
programma-Reportez-vous au chapitre Mettre de l’ordre pour plus de
détails sur l’architecture, la rigueur et la clarté de votre gramme.
Le noyau PHP est un moteur en langage C localisé sur le serveur Quand
un fichier est appelé par un navigateur web, selon son extension (.htm,
.php, asp…), le serveur l’envoie directement au navigateur pour qu’il
affiche la page ou le traite (dans le cas d’un fichier php) en exécutant les
commandes du langage PHP dont le résultat est renvoyé sous forme decode HTML
1 Introduction
22• Double Poche PHP & MySQL
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Trang 23Le langage PHP est interprété dans sa version 3 et compilé à la volée dans
la version 4 Le langage compilé est un peu plus rapide pour la machine
Langage C
C est un langage de haut niveau, compilé pour devenir exécutable sur une machine Le langage naturel est celui que nous employons dans ce livre — du moins nous l’espérons Le langage
de haut niveau est un langage de programmation qui utilise des mots, le langage de bas niveau est quant à lui composé de 0 et de 1, seul langage compréhensible par une machine C emploie une syntaxe et des mots qui sont ensuite transformés par un compilateur en une suite
de 0 et de 1, selon le code de la machine et son système d’exploitation.
Il existe des compilateurs C pour Linux ou Windows Ainsi, un gramme compilé sous Windows ne peut être utilisé sous Linux, et vice versa.
pro-1.5 Des chiffres.
En février 2002, le serveur le plus répandu était Apache, avec 65 % desserveurs, suivi par Microsoft à 25 % Selon l’enquête d’E-Soft (http://www.securityspace.com), dans les serveurs Apache, le module le plusrépandu était le langage PHP avec 1 646 792 modules, c’est-à-dire qu’il
m Figure 1.1 : Traitement d’un fichier PHP
Des chiffres
Double Poche PHP & MySQL• 23
Trang 24était installé sur environ 45 % des serveurs Apache Ces chiffres netiennent pas compte du cas ó le moteur PHP est installé sur un serveurMicrosoft.
En général, PHP est un langage de script, c’est-à-dire qu’il est inclus dans
la page HTML Il peut aussi être utilisé pour envoyer des commandessystème à la machine ou pour créer des logiciels comme ceux que vousavez sur votre PC, grâce à l’outil PHP-GTK dont la version 0.5.0 vient desortir Elle était très attendue car c’est la première version stable Elleouvre de grandes perspectives pour les développeurs Les impatients l’ontappelée "Lundi commence samedi"
m Figure 1.2 : Taux de pénétration du module PHP sur Apache
1 Introduction
24• Double Poche PHP & MySQL
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Trang 25page PHP