Upload
gwenaelle-marchand
View
105
Download
2
Embed Size (px)
Citation preview
Introduction au langage PHP
Licence Pro2006-2007
Cours Internet / Intranet
• Utilité• Historique• Exemples• Fonctions
PHP• Classes
Cours Internet Gérard Rozsavolgyi 2
Caractéristiques principales Un langage de script, interprété Multi-plateformes Spécialisé dans la génération de texte,
en particulier HTML Fichiers séparés (.php ou .php3) ou code
inséré dans une page HTML entre les balises <?php et ?>
Cours Internet Gérard Rozsavolgyi 3
FonctionnementL’interpréteur lit un fichier source .php puis génère un
flux de sortie avec les règles suivantes :- toute ligne située à l’extérieur d’un bloc PHP ( entre <? et ?>) est recopiée inchangée dans le flux de sortie- le code PHP est interprété (et génère éventuellement des résultats intégrés eux aussi au flux de sortie- les erreurs éventuelles donnent lieu à des messages d’erreurs qu’on retrouve également dans le flux de sortie.
Cours Internet Gérard Rozsavolgyi 4
Historique Créateur : Rasmus Lerdorf, 1994 pour analyser les
connexions sur son site Web Personal Home Pages puis HypertextPreProcessor
Syntaxe proche du C, peu structuré mais dispose de la possibilité de définir des fonctions et des classes
Beaucoup d’évolutions et d’enrichissements du langage depuis. (V1.0 V 5.x)
Grand succès, beaucoup de code libre disponible. ~ 10 000 000 de sites Web l’utilisent à travers le
monde…
Cours Internet Gérard Rozsavolgyi 5
Exemples élémentaires Source : exemples\hello.php
http://localhost/php/hello.php Source : exemples\info.php
http://localhost/php/info.php Source : exemples\user-agent.php
ttp:::h lo l ostca h :p ph :us r: t:p pe age h
Cours Internet Gérard Rozsavolgyi 6
Imbrication totale HTML/PHP Commencer à écrire du code PHP Insérer un bloc de code HTML Reprendre son code PHP Exemple : Source exemples\
imbrication.php
http://localhost/php/imbrication.php
Cours Internet Gérard Rozsavolgyi 7
formulaire.php<FORM action= formRes.php method=GET>
<input type = text length=30 maxlength=30 name=“nom”>
<P>
<input type=submit value=“Envoyer”>
</FORM></BODY></HTML>
Source : exemples\formulaire.php
Cours Internet Gérard Rozsavolgyi 8
La réponse PHP : action.php<H1>Bonjour, <? echo $nom ?></H1>
<P>
Votre nom est stocké dans la variable $nom
dont le type est <? echo gettype($nom) ?>
Source : exemples\action.php
http://localhost/php/formulaire.php
Cours Internet Gérard Rozsavolgyi 9
Variables Déclaration : $age=10; $nom=« toto »… Attention aux conversions de string :
$str=« 123soleil »$x=3+$str
echo($x) 126
Cours Internet Gérard Rozsavolgyi 10
Types : fonctions utiles gettype() renvoie : integer, double, string,
array, object, class, ou « unknown type » settype() : Si $a=3.5 settype($a, « integer »)
$a=3 Fonctions isset(), empty() et unset() is_int(), is_long(), … is_object().
Cours Internet Gérard Rozsavolgyi 11
Constantes Define(« Nom », « Zorro »); Define(« pi »,3.141592); If (defined(« pi ») echo(« pi=» . pi );
Cours Internet Gérard Rozsavolgyi 12
Operateurs +, -, *, /, %, =, ==, <, >, … comme en C Concaténation des châines : . $ ($var) @print(5/0); // suppression des erreurs
Cours Internet Gérard Rozsavolgyi 13
Structures de contrôle Comme en C sauf :
- if (…) {… } elseif (…){…} else {…}
Le reste identique
Cours Internet Gérard Rozsavolgyi 14
Divers Inclure des fichiers : Include common.php Déclarer une fonction :
function carre($num){ return $num * $num;}
Appel : echo(carre($n)) Exemple : exemples\carre.php Résultat : http://localhost/php/carre.php
Cours Internet Gérard Rozsavolgyi 15
Tableaux $jours=array{« lundi », « mardi », …} sort($jours) array_walk($jours, println); Autre exemple :
exemples\infospy.php http://localhost/php/infospy.php
Cours Internet Gérard Rozsavolgyi 16
Classes Exemple plus complexe :
class.smtp.inc
Cours Internet Gérard Rozsavolgyi 17
Evaluation On peut évaluer une expression par la
méthode eval() . Source : exemples\eval.php http://localhost/php/eval.php
Cours Internet Gérard Rozsavolgyi 18
Liens (I) Site de référence : http://www.php.net En français :
ttp::: v: x : t: oh de e e e ds:c
www.phpindex.com
http://www.phpinfo.com Echange de fonctions ou de classes :
http://px.sklar.com
Cours Internet Gérard Rozsavolgyi 19
Liens plus avancés http://sourceforge.net/projects/phplib http://phpclasses.upperdesign.com