1.PHP Mysql Partie1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 22

Le Langage PHP

Partie 1

1
Plan

1. Rappel

2. Le Langage PHP

2
Rappel
 Les SGBD (Systèmes de Gestion de Bases de Données) permettent
d’organiser le stockage d’informations.

 Le langage SQL (Structured Query Language) permet d’interroger les bases de


données relationnelles :

SELECT cl_nom, cl_prenom


FROM clients
WHERE cl_ville = “Tunis“;

 Les données sont récupérées sous forme de tables (n lignes * m colonnes)


 Un certain nombre de traitements ne peuvent pas être réalisés en SQL
 Recours à un langage (autre que SQL) qui est capable d’interagir avec un SGBD

 Parmi les langages susceptibles d’être utilisés on trouve :


Perl
Python
PHP

 Il s’agit de langages de script (interprétés) 3


Le modèle: client serveur

requête

Client internet Serveur

réponse

appel de la page

Base de Script
données extraction Document
de données PHP exécution
MySQL Html

4
Le langage PHP

1994 Rasmus Lerdorf


pour les besoins des pages web personnelles
signifiait Personal Home Page

1997 réécrit par Zeev Suraski et Andi Gutmans pour donner


PHP3
PHP : « PHP: Hypertext Preprocessor »

Avantages de PHP
 Il s’intègre facilement aux pages web
 gratuit (Open Source)
 syntaxe empruntée au langage C et à Perl
 nombreuses bibliothèques de fonctionnalités (BD,
dessin, réseau) 5
Le langage PHP

PHP peut être utilisé de deux manières différentes :

 Soit comme un langage de programmation traditionnel (en


ligne de commande) >php bonjour.php
 Soit intégré dans une page web Bonjour

Exemple de programme PHP

Fichier bonjour.php
<?php Autres syntaxes d’intégration :
<? … ?>
echo “Bonjour“;
<script language=„‟php‟‟> … </script>
?> <% … %>
6
Le langage PHP

Exemple de script, code


Autre écriture du même script :
source (côté serveur) :
<?php
<html>
echo „‟<html>\n<body>\n‟‟;
<body>
echo „‟<h1>Mon premier script</h1>\n‟‟;
<h1>Mon premier script</h1>
echo „‟Bonjour\n‟‟;
<?php echo „‟Bonjour\n‟‟; ?>
echo „‟</body>\n</html>\n‟‟;
</body>
?>
</html>

Code source (côté client) Résultat affiché par le navigateur :


de la page essai.php
résultant du script

7
Les commentaires
Un script php se commente comme en C :
Exemple :

<?php

// commentaire de fin de ligne

/* commentaire
sur plusieurs
lignes */

?>

Tout ce qui se trouve dans un commentaire est ignoré. Il est conseillé de


commenter largement ses scripts.

8
Les variables

 Les variables sont toutes préfixées par le symbole $


<?php

$annee = 1980;
$nom = “Mohamed“; \n : retour à la ligne

echo “Bonjour, je m‟appelle $nom\n“;


echo “je suis né en $annee\n”;

?>

 Les variables non sont pas typées en PHP

<?php Une variable peut prendre n’importe


$valeur = 1; quelle valeur (entier, réel, chaîne, tableau)
$valeur = “Bonjour“;
?>
9
Les constantes

La valeur d'une constante est fixée une fois pour toute. Les constantes ne portent
pas le symbole $ (dollars) en début d’identificateur et ne sont pas modifiables.

define(„‟var‟‟,valeur) : définit la constante var (sans $) de valeur valeur

Exemple 1 :
define(„‟author‟‟,‟‟Mohamed‟‟);
echo author; // affiche ‘Mohamed’

Exemple 2 :
define(MY_YEAR,1980);
echo MY_YEAR; // affiche 1980

Contrairement aux variables, les identificateurs de constantes (et aussi ceux de


fonction) ne sont pas sensibles à la casse.
10
Les structures de contrôle
Structure conditionnelle:
if (condition) { action 1 } else { action 2 }

If ($valeur > 1) { If ($valeur == 1) {


echo “la valeur est supérieure à 1“; echo “la valeur est égale à 1“;
} } else {
echo “la valeur est différente de 1“;
If ($valeur < 1) { }
echo “la valeur est inférieure à 1“;
}

If ($valeur == 1) {
echo “la valeur est égale à 1“;
}

If ($valeur != 1) {
echo “la valeur est différente de 1“;
}
11
Les structures de contrôle

Structures répétitives:

La boucle tant que : while (condition) { instructions }

$i = 1;
$somme = 0;
while ($i <= 10) {
$somme = $somme + $i;
$i = $i + 1;
}

echo “Somme des entiers de 1 à 10 = $somme “;

12
Les structures de contrôle

Structures répétitives:
La boucle pour :

for (initialisation ; condition d‟arrêt; incrémentation) { instructions }

$somme = 0;
for ($i = 1; $i <= 10; $i = $i + 1) {
$somme = $somme + $i;
}

echo “Somme des entiers de 1 à 10 = $somme “;

Pour i partant de 1 et tant que i <= 10, ajouter 1 à i après chaque itération

13
Les chaînes de caractères

Une variable chaîne de caractères n’est pas limitée en nombre de caractères. Elle est
toujours délimitée par des simples quotes ou des doubles quotes.
Exemples :
$nom = „‟Mohamed‟‟;
$prenom = „Benjlaiel‟;

Les doubles quotes permettent l’évaluation des variables et caractères spéciaux


contenus dans la chaîne (comme en C ou en Shell) alors que les simples ne le
permettent pas.
Exemples :
echo „‟Nom: $nom„‟; // affiche Nom: Mohamed
echo ‟Nom: $nom„; // affiche Nom: $nom

Quelques caractères spéciaux : \n (nouvelle ligne), \r (retour à la ligne), \t (tabulation


horizontale), \\ (antislash), \$ (caractère dollars), \‟‟ (double quote).
Exemple : echo „‟Hello Word !\n‟‟;
echo nl2br("Hello\n\rWorld\n\r!!!"); 14
Les chaines de caractères
Opérateur de concaténation de chaînes : . (point)

Exemple 1 :
$Mot1 = „‟Hello‟‟;
$Mot2 = „‟Word‟‟;
echo $Mot1.$Mot2;

Affichage d’une chaîne avec echo:


Exemples:
echo „Hello Word.‟;
echo „‟Hello ${name}\n‟‟;
echo ‟‟Nom : ‟‟, $name;
echo(„‟Bonjour‟‟);

Quelques fonctions:
strlen($str) : retourne le nombre de caractères d’une chaîne
strtolower($str) : conversion en minuscules
strtoupper($str) : conversion en majuscules
trim($str) : suppression des espaces de début et de fin de chaîne
substr($str,$i,$j) : retourne une sous chaîne de $str de taille $j et débutant à la position $i
strnatcmp($str1,$str2) : comparaison de 2 chaînes
addslashes($str) : ajouter les backslashes ("\") devant les caractères 15
ord($char) : retourne la valeur ASCII du caractère $char
Les chaines de caractères

Les fonctions d‟affichage :


echo() : écriture dans le navigateur
print() : écriture dans le navigateur
printf([$format, $arg1, $arg2]) : écriture formatée comme en C, i.e. la chaîne de
caractère est constante et contient le format d’affichage des variables passées en
argument

Exemples :
echo „‟Bonjour $nom‟‟;
print(„‟Bonjour $nom‟‟);
printf(„‟Bonjour %s‟‟, $nom);

16
Les tableaux

Il existe plusieurs manières de manipuler les tableaux

$tableau = array(); $tableau = array();


$tableau[1] = 1;
$tableau[2] = 2; array_push($tableau,1);
$tableau[3] = 3; array_push($tableau,2);
array_push($tableau,3);
print_r( $tableau );
reset( $tableau );
while (list($cle,$val) = each($tableau)) {
$tableau = array(1, 2, 3); echo “tableau[ $cle ] = $val \n“;
}
foreach($tableau as $element) {
echo “$element \n“;
}

17
Les fonctions

Comme tout langage de programmation, php permet l’écriture de


fonctions.

Les fonctions peuvent prendre des arguments dont il n’est pas besoin de
spécifier le type. Elles peuvent de façon optionnelle retourner une valeur.

L’appel à une fonction peut ne pas respecter son prototypage (nombre de


paramètres). Les identificateurs de fonctions sont insensibles à la casse.

Exemple :
function mafonction($toto) {
$toto += 15;
echo „‟Salut !‟‟;
return ($toto+10);
}
$nbr = MaFonction(15.1); 18
Les fonctions

On peut modifier la portée des variables locales à une fonction.

global permet de travailler sur une variable de portée globale au programme. Le


tableau associatif $GLOBALS permet d’accéder aux variables globales du script
($GLOBALS[„‟var‟‟] accède à la variable $var).
Exemple :
function change() {
global $var; // définit $var comme globale
$GLOBALS[„‟toto‟‟] ++; // incrémente la variable globale $toto
$var++; // cela sera répercuté dans le reste du programme
}

static permet de conserver la valeur d’une variable locale à une fonction.


Exemple :
function change() {
static $var; // définit $var comme statique
$var++; // sa valeur sera conservée jusqu’au prochain appel
}

19
Les fonctions

On peut donner une valeur par défaut aux arguments lors de la déclaration de la
fonction. Ainsi, si un argument est « oublié » lors de l’appel de la fonction, cette
dernière lui donnera automatiquement une valeur par défaut décidée à l’avance par
le programmeur.
Exemple :
function Set_Color($color=„‟black‟‟) {
global $car;
$car[„‟color‟‟] = $color;
}

Forcer le passage de paramètre par référence (équivalent à user de global):


Exemple :
function change(&$var) { // force le passage systématique par référence
$var += 100; // incrémentation de +100
}
$toto = 12; // $toto vaut 12
change($toto); // passage par valeur mais la fonction la prend en référence
echo $toto; // $toto vaut 112

20
Les fonctions
Les paramètres sont passés par copie et les résultats sont retournés par copie
(sauf à forcer la référence). Même sans paramètre, une entête de fonction doit
porter des parenthèses ( ). Les différents arguments sont séparés par une virgule ,
et le corps de la fonction est délimité par des accolades { }.

Quelques exemples :
function afficher($str1, $str2) { // passage de deux paramètres
echo „‟$str1, $str2‟‟;
}

function bonjour() { // passage d’aucun paramètre


echo „‟Bonjour‟‟;
}

function GetColor() { // retour d’une variable de type chaîne


return „‟black‟‟;
}
21
Les fonctions

Une fonction peut être définie après son appel (en PHP4 du fait de la compilation
avant exécution contrairement au PHP3 qui est interprété).

Exemple :
function f1() { // définition de la fonction f1
echo „‟fonction 1…‟‟;
}
f1(); // appel de la fonction f1 définie plus haut
f2(); // appel de la fonction f2 pas encore définie
function f2() { // définition de la fonction f2
echo „‟fonction 2!<br />‟‟;
}

Cet exemple affichera : fonction 1…fonction2 !.

22

Vous aimerez peut-être aussi