1 Chapitre1 - Exercices corriges
Parmi les logiciels de gestion de projet nous citerons MS Project (Microsoft ......
Trois organismes sont accrédités pour fournir, après examen, les certifications
ITIL ...... Le traitement du sujet nécessite toutefois une vision globale de SIDOL et
de ...
part of the document
HYPERLINK \l "_Toc259635100" 1.4.2 Eclipse for PHP PAGEREF _Toc259635100 \h 11
HYPERLINK \l "_Toc259635101" 1.4.3 Dreamweaver (ADOBE) PAGEREF _Toc259635101 \h 14
HYPERLINK \l "_Toc259635102" 1.5 Une page PHP avec du HTML PAGEREF _Toc259635102 \h 15
HYPERLINK \l "_Toc259635103" 1.6 Une page 100% PHP PAGEREF _Toc259635103 \h 17
HYPERLINK \l "_Toc259635104" 1.7 Phpinfo PAGEREF _Toc259635104 \h 18
HYPERLINK \l "_Toc259635105" 2 CONSTANTES, VARIABLES, OPERATEURS PAGEREF _Toc259635105 \h 19
HYPERLINK \l "_Toc259635106" 2.1 Conventions de langage PAGEREF _Toc259635106 \h 19
HYPERLINK \l "_Toc259635107" 2.2 Les commentaires PAGEREF _Toc259635107 \h 19
HYPERLINK \l "_Toc259635108" 2.3 Les constantes PAGEREF _Toc259635108 \h 19
HYPERLINK \l "_Toc259635109" 2.4 Les variables PAGEREF _Toc259635109 \h 20
HYPERLINK \l "_Toc259635110" 2.5 Portée PAGEREF _Toc259635110 \h 21
HYPERLINK \l "_Toc259635111" 2.6 Les opérateurs de conversion PAGEREF _Toc259635111 \h 26
HYPERLINK \l "_Toc259635112" 2.7 Opérateurs divers PAGEREF _Toc259635112 \h 26
HYPERLINK \l "_Toc259635113" 2.8 Fonction d'exécution de commandes système PAGEREF _Toc259635113 \h 27
HYPERLINK \l "_Toc259635114" 2.9 Les fonctions sur les variables PAGEREF _Toc259635114 \h 28
HYPERLINK \l "_Toc259635115" 2.10 Les opérateurs PAGEREF _Toc259635115 \h 29
HYPERLINK \l "_Toc259635116" 2.10.1 Les opérateurs arithmétiques PAGEREF _Toc259635116 \h 29
HYPERLINK \l "_Toc259635117" 2.10.2 Les opérateurs d'assignation PAGEREF _Toc259635117 \h 29
HYPERLINK \l "_Toc259635118" 2.10.3 Les opérateurs de comparaison PAGEREF _Toc259635118 \h 30
HYPERLINK \l "_Toc259635119" 2.10.4 Les opérateurs logiques PAGEREF _Toc259635119 \h 31
HYPERLINK \l "_Toc259635120" 2.10.5 Les opérateurs binaires PAGEREF _Toc259635120 \h 32
HYPERLINK \l "_Toc259635121" 2.11 Les dates PAGEREF _Toc259635121 \h 33
HYPERLINK \l "_Toc259635122" 2.12 La classe DateTime PAGEREF _Toc259635122 \h 35
HYPERLINK \l "_Toc259635123" 2.13 Les Chaînes de caractères PAGEREF _Toc259635123 \h 36
HYPERLINK \l "_Toc259635124" 2.13.1 Quelques fonctions de base sur les chaînes de caractères PAGEREF _Toc259635124 \h 37
HYPERLINK \l "_Toc259635125" 2.13.2 Quelques fonctions sur les nombres PAGEREF _Toc259635125 \h 39
HYPERLINK \l "_Toc259635126" 2.13.3 Les fonctions de recherche et de remplacement PAGEREF _Toc259635126 \h 40
HYPERLINK \l "_Toc259635127" 2.13.4 La fonction EXPLODE PAGEREF _Toc259635127 \h 41
HYPERLINK \l "_Toc259635128" 2.13.5 Fonctions particulières PAGEREF _Toc259635128 \h 42
HYPERLINK \l "_Toc259635129" 2.14 Les expressions régulières PAGEREF _Toc259635129 \h 50
HYPERLINK \l "_Toc259635130" 2.14.1 Ereg et les motifs PAGEREF _Toc259635130 \h 50
HYPERLINK \l "_Toc259635131" 2.14.2 Les autres fonctions en liaison avec les expressions régulières PAGEREF _Toc259635131 \h 60
HYPERLINK \l "_Toc259635132" 2.14.3 Ereg_replace ou Eregi_replace PAGEREF _Toc259635132 \h 61
HYPERLINK \l "_Toc259635133" 2.14.4 Preg_match PAGEREF _Toc259635133 \h 64
HYPERLINK \l "_Toc259635134" 2.14.5 Preg_replace PAGEREF _Toc259635134 \h 65
HYPERLINK \l "_Toc259635135" 2.15 Le formatage pour l'affichage de certains types PAGEREF _Toc259635135 \h 69
HYPERLINK \l "_Toc259635136" 2.15.1 La fonction printf() PAGEREF _Toc259635136 \h 69
HYPERLINK \l "_Toc259635137" 2.15.2 La fonction number_format() PAGEREF _Toc259635137 \h 69
HYPERLINK \l "_Toc259635138" 3 LES STRUCTURES DE CONTROLE PAGEREF _Toc259635138 \h 70
HYPERLINK \l "_Toc259635139" 3.1 Le IF PAGEREF _Toc259635139 \h 70
HYPERLINK \l "_Toc259635140" 3.2 L'opérateur ternaire PAGEREF _Toc259635140 \h 71
HYPERLINK \l "_Toc259635141" 3.3 Le switch
case PAGEREF _Toc259635141 \h 72
HYPERLINK \l "_Toc259635142" 3.4 Le For PAGEREF _Toc259635142 \h 73
HYPERLINK \l "_Toc259635143" 3.5 Le TantQue PAGEREF _Toc259635143 \h 74
HYPERLINK \l "_Toc259635144" 3.6 Le Faire Tantque PAGEREF _Toc259635144 \h 75
HYPERLINK \l "_Toc259635145" 4 LES TABLEAUX PAGEREF _Toc259635145 \h 76
HYPERLINK \l "_Toc259635146" 4.1 Généralités PAGEREF _Toc259635146 \h 76
HYPERLINK \l "_Toc259635147" 4.2 Le Foreach PAGEREF _Toc259635147 \h 78
HYPERLINK \l "_Toc259635148" 4.3 Les tableaux à clés ou associatifs PAGEREF _Toc259635148 \h 79
HYPERLINK \l "_Toc259635149" 4.4 Quelques fonctions sur les tableaux PAGEREF _Toc259635149 \h 81
HYPERLINK \l "_Toc259635150" 5 LE PASSAGE DE VALEURS D'UNE PAGE A UNE AUTRE PAGEREF _Toc259635150 \h 85
HYPERLINK \l "_Toc259635151" 5.1 La méthode POST PAGEREF _Toc259635151 \h 85
HYPERLINK \l "_Toc259635152" 5.2 La méthode GET PAGEREF _Toc259635152 \h 87
HYPERLINK \l "_Toc259635153" 5.3 Comparaison GET et POST PAGEREF _Toc259635153 \h 89
HYPERLINK \l "_Toc259635154" 5.3.1 Comparatif PAGEREF _Toc259635154 \h 89
HYPERLINK \l "_Toc259635155" 5.3.2 Test de la limite du get PAGEREF _Toc259635155 \h 90
HYPERLINK \l "_Toc259635156" 5.3.3 Test de la limite du Post PAGEREF _Toc259635156 \h 91
HYPERLINK \l "_Toc259635157" 6 LES ELEMENTS DE L'INTERFACE PAGEREF _Toc259635157 \h 92
HYPERLINK \l "_Toc259635158" 6.1 Input text PAGEREF _Toc259635158 \h 92
HYPERLINK \l "_Toc259635159" 6.2 Travailler sur la même page PAGEREF _Toc259635159 \h 92
HYPERLINK \l "_Toc259635160" 6.3 Les cases à cocher PAGEREF _Toc259635160 \h 94
HYPERLINK \l "_Toc259635161" 6.4 Les boutons radio PAGEREF _Toc259635161 \h 95
HYPERLINK \l "_Toc259635162" 6.5 Les listes déroulantes PAGEREF _Toc259635162 \h 96
HYPERLINK \l "_Toc259635163" 6.6 Liste à sélections multiple (Première version) PAGEREF _Toc259635163 \h 99
HYPERLINK \l "_Toc259635164" 6.7 Liste à sélection multiple (Deuxième version) PAGEREF _Toc259635164 \h 100
HYPERLINK \l "_Toc259635165" 7 LA GESTION DES FICHIERS PAGEREF _Toc259635165 \h 101
HYPERLINK \l "_Toc259635166" 7.1 Lecture d'un fichier texte PAGEREF _Toc259635166 \h 102
HYPERLINK \l "_Toc259635167" 7.2 Création et/ou ajout dans un fichier texte PAGEREF _Toc259635167 \h 104
HYPERLINK \l "_Toc259635168" 7.3 Modification dans un fichier texte PAGEREF _Toc259635168 \h 105
HYPERLINK \l "_Toc259635169" 7.4 Lire un fichier text dans un tableau avec File PAGEREF _Toc259635169 \h 109
HYPERLINK \l "_Toc259635170" 7.5 Afficher un fichier dans le navigateur avec ReadFile PAGEREF _Toc259635170 \h 111
HYPERLINK \l "_Toc259635171" 7.6 Lire un fichier CSV (Comma Separated Value) PAGEREF _Toc259635171 \h 112
HYPERLINK \l "_Toc259635172" 7.7 Créer un fichier Binaire PAGEREF _Toc259635172 \h 113
HYPERLINK \l "_Toc259635173" 7.8 Lire un fichier Binaire PAGEREF _Toc259635173 \h 114
HYPERLINK \l "_Toc259635174" 7.9 Le système de fichier PAGEREF _Toc259635174 \h 117
HYPERLINK \l "_Toc259635175" 7.9.1 Savoir si un fichier est modifiable PAGEREF _Toc259635175 \h 117
HYPERLINK \l "_Toc259635176" 7.9.2 Renommer un fichier PAGEREF _Toc259635176 \h 117
HYPERLINK \l "_Toc259635177" 7.9.3 Supprimer un fichier PAGEREF _Toc259635177 \h 117
HYPERLINK \l "_Toc259635178" 7.9.4 Autres attributs PAGEREF _Toc259635178 \h 117
HYPERLINK \l "_Toc259635179" 7.9.5 Lister le contenu d'un répertoire PAGEREF _Toc259635179 \h 118
HYPERLINK \l "_Toc259635180" 7.10 Upload de fichier PAGEREF _Toc259635180 \h 120
HYPERLINK \l "_Toc259635181" 7.11 Annexes PAGEREF _Toc259635181 \h 124
HYPERLINK \l "_Toc259635182" 7.11.1 Liste de fonctions sur les fichiers PAGEREF _Toc259635182 \h 124
HYPERLINK \l "_Toc259635183" 7.11.2 Un chat PAGEREF _Toc259635183 \h 126
HYPERLINK \l "_Toc259635184" 7.11.3 Un petit moteur de recherche PAGEREF _Toc259635184 \h 127
HYPERLINK \l "_Toc259635185" 7.12 Passerelle PHP-JS PAGEREF _Toc259635185 \h 130
HYPERLINK \l "_Toc259635186" 8 LES COOKIES PAGEREF _Toc259635186 \h 131
HYPERLINK \l "_Toc259635187" 8.1 Présentation PAGEREF _Toc259635187 \h 131
HYPERLINK \l "_Toc259635188" 8.2 Exemples PAGEREF _Toc259635188 \h 132
HYPERLINK \l "_Toc259635189" 8.2.1 Stocker une valeur PAGEREF _Toc259635189 \h 132
HYPERLINK \l "_Toc259635190" 8.2.2 Stocker plusieurs valeurs dans une chaîne à "exploser" PAGEREF _Toc259635190 \h 133
HYPERLINK \l "_Toc259635191" 8.3 Tester la configuration du navigateur PAGEREF _Toc259635191 \h 135
HYPERLINK \l "_Toc259635192" 9 LES SESSIONS PAGEREF _Toc259635192 \h 136
HYPERLINK \l "_Toc259635193" 9.1 Gestion de base PAGEREF _Toc259635193 \h 136
HYPERLINK \l "_Toc259635194" 9.2 Gestion avancée PAGEREF _Toc259635194 \h 138
HYPERLINK \l "_Toc259635195" 9.2.1 La gestion par des champs cachés PAGEREF _Toc259635195 \h 138
HYPERLINK \l "_Toc259635196" 9.2.2 La gestion par réécriture d'URL PAGEREF _Toc259635196 \h 139
HYPERLINK \l "_Toc259635197" 9.2.3 La gestion via des fichiers PAGEREF _Toc259635197 \h 141
HYPERLINK \l "_Toc259635198" 9.3 Petite application : gestion de panier (Version1) PAGEREF _Toc259635198 \h 143
HYPERLINK \l "_Toc259635199" 9.4 Petite application : gestion de panier (Version2) PAGEREF _Toc259635199 \h 145
HYPERLINK \l "_Toc259635200" 9.5 Gestion de panier (version 3 : sans cookies) PAGEREF _Toc259635200 \h 147
HYPERLINK \l "_Toc259635201" 9.6 Et sur un seul document sans cookie PAGEREF _Toc259635201 \h 149
HYPERLINK \l "_Toc259635202" 10 LES FONCTIONS PAGEREF _Toc259635202 \h 151
HYPERLINK \l "_Toc259635203" 10.1 Principes et syntaxe PAGEREF _Toc259635203 \h 151
HYPERLINK \l "_Toc259635204" 10.2 Les inclusions de fichiers de code PAGEREF _Toc259635204 \h 153
HYPERLINK \l "_Toc259635205" 11 GESTION DES ERREURS PAGEREF _Toc259635205 \h 154
HYPERLINK \l "_Toc259635206" 11.1 Introduction PAGEREF _Toc259635206 \h 154
HYPERLINK \l "_Toc259635207" 11.2 Pas de gestion personnalisée des erreurs PAGEREF _Toc259635207 \h 156
HYPERLINK \l "_Toc259635208" 11.3 Gestion locale des erreurs d'exécution PAGEREF _Toc259635208 \h 157
HYPERLINK \l "_Toc259635209" 11.4 Redirection des messages d'erreurs PAGEREF _Toc259635209 \h 158
HYPERLINK \l "_Toc259635210" 11.5 Gestion personnalisée des erreurs PAGEREF _Toc259635210 \h 159
HYPERLINK \l "_Toc259635211" 11.5.1 Première approche : le minimum PAGEREF _Toc259635211 \h 159
HYPERLINK \l "_Toc259635212" 11.5.2 Deuxième approche : Modification du niveau d'erreur PAGEREF _Toc259635212 \h 162
HYPERLINK \l "_Toc259635213" 11.5.3 Création d'un niveau personnalisé et trigger_error() PAGEREF _Toc259635213 \h 164
HYPERLINK \l "_Toc259635214" 11.6 Gestion centralisée des erreurs PAGEREF _Toc259635214 \h 166
HYPERLINK \l "_Toc259635215" 12 ANNEXES PAGEREF _Toc259635215 \h 167
HYPERLINK \l "_Toc259635216" 12.1 Les variables d'environnement PAGEREF _Toc259635216 \h 167
HYPERLINK \l "_Toc259635217" 12.2 Le fichier PHP.INI PAGEREF _Toc259635217 \h 169
HYPERLINK \l "_Toc259635218" 12.2.1 Le chargement dynamique d'extensions PAGEREF _Toc259635218 \h 169
HYPERLINK \l "_Toc259635219" 12.2.2 Les erreurs PAGEREF _Toc259635219 \h 169
HYPERLINK \l "_Toc259635220" 12.2.3 Paramétrage du chargement de fichiers PAGEREF _Toc259635220 \h 170
HYPERLINK \l "_Toc259635221" 12.2.4 Magic quotes PAGEREF _Toc259635221 \h 170
HYPERLINK \l "_Toc259635222" 12.3 Quelques fonctions utiles PAGEREF _Toc259635222 \h 171
HYPERLINK \l "_Toc259635223" 12.4 Chronométrer PAGEREF _Toc259635223 \h 172
HYPERLINK \l "_Toc259635224" 12.4.1 En secondes PAGEREF _Toc259635224 \h 172
HYPERLINK \l "_Toc259635225" 12.4.2 En millisecondes PAGEREF _Toc259635225 \h 172
HYPERLINK \l "_Toc259635226" 12.5 Le protocole http PAGEREF _Toc259635226 \h 173
HYPERLINK \l "_Toc259635227" 12.6 Les en-têtes HTTP avec PHP (header) PAGEREF _Toc259635227 \h 176
HYPERLINK \l "_Toc259635228" 12.6.1 Gestion du cache client PAGEREF _Toc259635228 \h 176
HYPERLINK \l "_Toc259635229" 12.6.2 Gestion des jeux de caractères PAGEREF _Toc259635229 \h 177
HYPERLINK \l "_Toc259635230" 12.7 Un chat PAGEREF _Toc259635230 \h 179
HYPERLINK \l "_Toc259635231" 12.8 Exécuter un script PHP à une date précise ou périodiquement PAGEREF _Toc259635231 \h 184
HYPERLINK \l "_Toc259635232" 12.8.1 Le script PHP à exécuter PAGEREF _Toc259635232 \h 184
HYPERLINK \l "_Toc259635233" 12.8.2 A partir d'un script PHP PAGEREF _Toc259635233 \h 184
HYPERLINK \l "_Toc259635234" 12.8.3 Lancer le navigateur PAGEREF _Toc259635234 \h 186
HTML et PHP
Généralités sur PHP
Caractéristiques
PHP : Personal Home Page puis PHP HyperText Preprocessor (Récursivité du nom!).
Ce langage a été crée par Rasmus Lerdorf en 1993.
La version actuelle (2007) est la version 5.
PHP est un générateur de code HTML.
PHP est un langage de scripts Open Source côté serveur.
Il est intégré à du code HTML.
PHP peut gérer des contenus de formulaires WEB, des graphiques, des cookies et des sessions, manipuler des fichiers texte ou autre, accéder à des bases de données.
PHP fonctionne sur de nombreux systèmes d'exploitation : Linux, Unix, Microsoft, Mac-OS,
Il fonctionne sur de nombreux serveurs Web : Apache, IIS, PWS, Netscape, iPlanetServer,
PHP est orienté objet depuis la version 4.
PHP peut générer du texte, du graphisme, du Flash, du XML, du PDF à la volée et l'envoyer au navigateur.
PHP supporte de nombreux protocoles comme LDAP (Lightweight Directory Access Protocol), IMAP (Internet Message Access Protocol), SNMP (Simple Network Management Protocol), NNTP (Network News Transfer Protocol), POP3 (Post Office Protocol 3), http (HyperText Transfer Protocol), COM (),
PHP supporte le format WDDX, qui lui permet de communiquer avec d'autres langages web.
PHP supporte aussi les instanciations d'objets Java.
Avantages de PHP
Gratuit,
Fait pour le Web,
Facile à apprendre,
Portable,
Disponibilité du code source (que vous pouvez donc modifier avant les releases),
Haute performance,
Support (Payant).
Nouveautés de PHP5
Une nouvelle approche POO.
L'intégration de PECL : Extensions développées précedemment par PEAR;
PEAR (pour PHP Extension and Application Repository) est un framework (ensemble de bibliothèques logicielles) de composants PHP créé par Stig S. Bakken en 1999.
PECL (PHP Extensions C Libraries) est un framework développé en C.
SQLite.
SimpleXML.
Divers
Editeurs : NetBeans 6.5 pour PHP (Gratuit), Eclipse (Gratuit), PHPEdit (Gratuit), NotePad++ (gratuit), HapEdit (Gratuit), Dreamwaever (ADOBE, payant),
Bibliographie sommaire :
GUEDON, HEUTE & HEUTE, MILLER, "La bible du PHP", Micro application Edition.
Luke Welling, Laura Thomson, "PHP5 et MySQL 5", Campus Press.
Cyril PIERRE de GEYER et Eric DASPET, "PHP 5 avancé", Eyrolles.
Références en ligne.
HYPERLINK "http://www.phpfrance.com/documentation.php" http://www.phpfrance.com/documentation.php
HYPERLINK "http://www.php.net/manual/fr/" http://www.php.net/manual/fr/
HYPERLINK "http://dev.mysql.com/doc/mysql/fr/index.html" http://dev.mysql.com/doc/mysql/fr/index.html
Références hors ligne.
php_5_fr.chm.
Le fonctionnement du WEB statique
Le WEB (www) fonctionne en mode Client/Serveur via le protocole HTTP.
EMBED MSPhotoEd.3
Lorsque le client saisit dans la barre d'adresses de son navigateur une URL (Uniform Resource Locator) du type http://www.serveur.com/index.html dans un premier temps le serveur est recherché (www.serveur.com) selon un certain protocole (http://) puis la page demandée, dans le chemin, est recherchée sur le serveur (index.html).
Si la page est trouvée, elle est envoyée au navigateur du client qui l'interprète et qui l'affiche, autrement une page "404" est affichée.
Les extensions sont HTM ou HTML pour les pages HTML.
Les extensions sont PHP pour les pages PHP.
Exemple de requête : http://127.0.0.1/index.html
Une requête HTTP est un ensemble de lignes envoyé du navigateur au serveur.
Elle comprend :
Une ligne de requête (protocole, url, éventuellement des données),
Les champs d'en-tête de la requête,
Le corps de la requête.
Une réponse HTTP est un ensemble de lignes envoyées du serveur au navigateur.
Elle comprend :
Une ligne de statut,
Le corps de la réponse.
Cf les détails en Annexes.
Le fonctionnement du WEB avec PHP
Avec PHP le fonctionnement est quasiment identique.
Une étape supplémentaire est nécessaire : la génération dynamique de code HTML via PHP.
EMBED MSPhotoEd.3
La saisie de l'URL sera du type http://www.serveur/php/page1.php
La demande est envoyée sur l'Internet ou l'Intranet, le serveur est repéré, il cherche la page, traite le code PHP, produit le code HTML et l'envoie au client.
Lorsque vous affichez la source via le navigateur d'une page PHP vous ne visualisez pas le code PHP mais seulement le code HTML généré par l'interpréteur PHP.
Avec un SGBDR
Un requête est ajoutée : celle qui va vers le serveur BD.
EMBED MSPhotoEd.3
Editeurs
NetBeans (Gratuit, Sun), Eclipse (Gratuit, Eclipse), DreamWeaver (Paysant, Adobe), PHP Edit(Gratuit), etc.
NetBeans
Téléchargez-le à HYPERLINK "http://netbeans.org/" http://netbeans.org/
Puis installez-le.
Eclipse for PHP
EasyEclipseFor PHP : easyeclipse-php-1.2.2.2.exe
Téléchargez-le à : HYPERLINK "http://www.easyeclipse.org/site/distributions/php.html" http://www.easyeclipse.org/site/distributions/php.html
Installez-le.
Créez avant la création du premier workspace un dossier php2 dans votre arborescence de site web (par exemple C:\xampp\htdocs\php2)
Lancez EasyEclipseFor PHP
Créez un nouveau projet,
Créez un nouveau fichier,
Vérifiez la configuration du projet ou du workspace.
Configuration du Workspace ou du projet (Sélectionnez le projet, cliquez droit, Properties, PHP Project Settings).
ou pour un sous site
Dreamweaver (ADOBE)
Une page PHP avec du HTML
L'écran
Le code de premier_php.php
Premier PHP
Du HTML
Si vous affichez la source dans le navigateur vous obtenez ça :
Premier PHP
Du HTML
31 Jan 2009
Commentaires
Les balises sont les balises standards.
Le code PHP est intégré dans une page HTML.
Le code PHP génère du code HTML, le seul qui est envoyé au navigateur et interprétable par celui-ci (nous verrons par la suite que l'on intègre aussi des codes autres, interprétables par le navigateur, du javascript ou du css par exemple).
L'instruction echo et la fonction print sont utilisées pour générer du code HTML.
La syntaxe de echo est la suivante :
echo chaîne1 [, chaîne2,
];
La syntaxe de print est la suivante :
print(chaîne);
Notez le caractère d'échappement \ devant les ".
Ainsi que le \n ou \r\n qui génère un saut de ligne dans le code source.
Une page 100% PHP
L'écran
Le code
CONSTANTES, VARIABLES, OPERATEURS
Conventions de langage
Les noms des variables sont sensibles à la casse et précédés par un $.
Les lettres, _ et chiffres sont autorisés pour composer les noms.
Par convention les noms des variables sont en minuscules avec des majuscules en début de noms composés ou un underscore comme séparateur de mots.
Les noms des fonctions et les noms des constantes ne sont pas sensibles à la casse.
Par convention les noms des constantes sont en majuscules.
Les commentaires
// En début de ligne ou en fin de ligne. Tout ce qui suit est ignoré.
/*
Bloc de lignes en commentaires
*/
Les constantes
Une constante est un identificateur qui ne change pas de valeur. Le nom de la constante n'est pas sensible à la casse. Son identificateur n'est pas précédé par un $.
On définit une constante avec lopérateur define.
On teste son existence avec defined("NOM_DE_CONSTANTE");
Syntaxe : define("NOM_DE_CONSTANTE",valeur)
Exemples
define("SALUTATION","Bonjour");
define("PI",3.14);
echo "", SALUTATION;
if(defined("PI")) echo PI;
Les variables
Les variables sont de types implicites et n'ont pas d'espace de code de déclarations (Interprétation et non compilation).
Les identificateurs des variables sont précédés par un $.
Exemples
$lsMot = "Bonjour";
$liCtr = 1;
Les types de PHP sont les suivants:
entiers (int)
réel (double)
chaîne (string)
booléen (boolean)
tableau (array)
objet (object)
Pour les booléens notez que True renvoie 1 et False renvoie vide.
Portée
Les variables "superglobales" $_SERVER, $_GET, $_POST, $_REQUEST, $_COOKIE,
(informations sur le serveur, contenu de l'url, ...) sont disponibles dans chaque script.
Ce sont des tableaux associatifs ou tableaux à clés.
Les constantes sont globales (Disponibles dans tout le document).
Les variables déclarées dans un script (hors d'une fonction) sont locales au script, ie disponible dans tout le script mais inaccessibles dans les fonctions.
Les variables déclarées dans une fonction sont locales à la fonction.
Les variables déclarées comme globales (qualificateur global) dans les fonctions font référence à une variable déclarée comme globale au niveau du script : elles sont donc globales au script.
Les variables déclarées comme statiques dans une fonction (qualificateur static) sont statiques (locales globales).
Tableau récapitulatif
Niveau / QualificateurAucun qualificateurQualificateur globalQualificateur staticScriptLocale (ie partout dans le script sauf dans les fonctions)Globale(FunctionLocale (ie dans la fonction)Globale (à condition qu'elle est été déclarée global dans le script).Locale-globale
Ecran et script sur les constantes