Vous êtes sur la page 1sur 25

Langage de script

PHP

Chapitre 1 : Introduction au PHP

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 1/25


Plan PHP
Partie 1 :

• Les types des sites web.


• Paradigme Client-Serveur.
• Qu’est-ce que PHP?
• Premier pas avec PHP
• La syntaxe de base de PHP (Affichage, opérateurs, types et les instructions
conditionnelles)

Partie 2 : Tableaux et les fonctions

Partie 3 : Les formulaires et sessions

Partie 4 : PHP et MySql

Partie 5 : POO en PHP

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 2/25


Les types des sites web

 Site web Statique:


o HTML + CSS + JS
o Pas de mise à jours automatique
o Modification de code source
(ajouter de nouveautés).
o Sont rare aujourd’hui
 Site web dynamique
o Plus complexe
o Apparition des formulaires
o PHP et MySQL + HTML, CSS et
JS.
Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 3/25
Les types des sites web

Pour un site web statique Pour un site web dynamique

I
I
demande
2

Client 3
réponses
Client Serveur
2 Serveur

1. Le client demande au serveur à voir une page web.


1. Le client demande au serveur à voir une page web. 2. Le serveur prépare la page spécialement pour le client
2. Le serveur lui répond en lui envoyant la page réclamé. 3. Le serveur lui envoi la page qu’il vient de générer.

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 4/25


Fonctionnement d’un site web

www.emsi.ma I fichier.php
II III

VI V
IV

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 5/25


Fonctionnement d’un site web
Les langages clients Les langages serveurs Les bases de données
front-end Back-end

 Laravel
 Symfony  Django
 Zend...
Pour communiquer avec ces logiciels,
on utilise un langage : SQL

 ASP .NET

 Java EE : Spring

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 6/25


PHP : Langage de Script pour le web

o PHP est un langage de programmation (Langage de script)

utilisé pour la création des applications web.

o Il fonctionne côté serveur.

o Des codes PHP peuvent être intégrés aux pages HTML, ces

codes étant interprétés lorsque le serveur veut retourner la

page à l’utilisateur

o Créé en 1994-1995 par Rasmus Lerdorf.

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 7/25


Configuration de machine

Un serveur local

éditeur de texte

wamp xamp mamp

Une combinaison entre PHP,


Navigateur APACHE et MySQL.

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 8/25


Configuration de machine

Pour chacun de vos projets PHP en local, il faudra créer un o Pour que vos fichiers en PHP soient interprétés, il faut leur
dossier à la racine de votre répertoire "htdocs" contenu dans ajouter l'extension ".php"
xampp. o Le code PHP s’insérer au milieux du code HTML

Sous Windows : C:\xampp\htdocs o Les balises PHP commencent par <?php et terminent par ?

Exemple : C:\xampp\htdocs\myProject\ >


Pour afficher le rendu de ma page dans une navigateur, il o Chaque instruction se termine par « ; ».
faudra consulter cette url : o Ainsi, le code PHP est entouré par l’une de ces balises :

http://localhost:8080/myProject/index.php <?php Code PHP ?> ;


Le nom de votre répertoire ne doit pas contenir d'espaces <? Code PHP ?> ;
ni de caractères spéciaux.

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 9/25


Premier pas avec PHP

 Les pages web contenant du PHP ont l'extension .php.

 Une page PHP = page HTML + des instructions PHP. <?php

 Les instructions PHP sont placées dans une balise <? echo "hello world 1 <br>";
php ?>. echo '<h1>hello world 2</h1> <br>';
// un seul parametre
 Pour afficher du texte en PHP, on utilise l'instruction echo print 'Hi';
ou print. // plusieur parametre
echo 'hi', 'world';
 Pour décrire le fonctionnement du code en PHP. On utilise ?>
les commentaires avec : // ou /* */.

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 10/25


Les variables et les types de données
 Une variable:
• Petite information stockée en mémoire temporairement.
• Existe tant que la page est en cours de génération.

 En PHP, les variables sont représentées par un signe dollar « $ » :

$id, $utilisateur, $x1 ….

 Les affectation sont réalisées grâce à « = » : $id = valeur;

 Leur type est défini implicitement par l'assignation d’une valeur:

Numérique entier ou réel; Chaîne; Booléen; Tableau ; Objet ; NULL

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 11/25


Les variables et les types de données
<?php
 Une variable est toujours constituée de deux éléments: $txt = "Hello world!";
$x = 5;
 Nom : pour pouvoir la reconnaître $y = 10.5;
 Valeur : c'est l'information qu'elle contient, et qui peut changer. $a = true;
$t =array("amine","ahmed","ali");

var_dump($txt);
Exemple de variable Type de variable var_dump($x);
$num = 2 ; int var_dump($y);
var_dump($a);
$num = 2.05 ; float var_dump($t);
$texte = 'chaîne ’ ;
$text = "chaîne "; string ?>
$test = true ; Ou $test = false ; boolean
$tab = array(); tableau

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 12/25


Afficher le contenu d’une variable

<?php

$name= "ali";
$age = 45;

echo 'First Name :'.$name.' Age :'.


Concaténation des chaînes $age.'<br>';
echo "First Name : $name Age : $age ";
 Permet d’assembler plusieurs chaînes echo 'First Name : $name Age : $age ';
 Réalisé grâce à l’opérateur point :
?>

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 13/25


Fonctions de string
- strlen() - Retourne la longueur d'une chaîne de caractères.

- str_word_count() - Compte les mots d'une chaîne de


echo strlen("Hi "); // 3
caractères echo str_word_count("Hello students!"); //
outputs 2
echo strrev("Hello world!"); // outputs !dlrow
- strrev() - Inverse une chaîne de caractères olleH
echo strpos("Hello world!", "world"); //
outputs 6
- strpos() - Recherche d'un texte dans une chaîne de caractères echo str_replace("world", "Dolly", "Hello
world!"); // outputs Hello Dolly!

- str_replace() - Remplacer un texte dans une chaîne de


caractères
- Autres : https://www.w3schools.com/php/php_ref_string.asp

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 14/25


Fonctions
<?php de Numbers
$x = 100;
echo var_dump(is_int($x));
echo '<br>';
$x = 100.55;
echo var_dump(is_int($x));
echo '<br>';
echo var_dump(is_nan(10));
echo '<br>';
$x = 5985;
echo var_dump(is_numeric($x));
echo '<br>';
$x = "50";
echo var_dump(is_numeric($x));
echo '<br>';
$x = "10" + 100;
echo var_dump(is_numeric($x));
echo '<br>';
$x = "Hello";
echo var_dump(is_numeric($x));
?>

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 15/25


Conversion des types

// Cast float to int


$x = 100.50;
$int_cast = (int)$x;
echo $int_cast;

echo "<br>";

// Cast string to int


$x = "100.50";
$int_cast = (int)$x;
echo $int_cast;
echo "<br>";

// Cast string to float


$x = "100.50";
$float_cast = (float)$x;
echo $float_cast;

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 16/25


PHP Math
 PHP dispose d'un ensemble de fonctions mathématiques qui vous permettent d'effectuer
des tâches mathématiques sur les nombres.

echo(pi()); // returns 3.1415926535898


echo(min(0, 150, 30, 20, -8, -200)); // returns -200
echo(max(0, 150, 30, 20, -8, -200)); // returns 150
echo(abs(-6.7)); // returns 6.7
echo(sqrt(64)); // returns 8
echo(round(0.60)); // returns 1
echo(round(0.49)); // returns 0
echo(rand(10, 100));

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 17/25


Constantes en PHP
 Une constante est un identifiant (nom) pour une valeur simple.
 La valeur ne peut pas être modifiée au cours du script.Un nom de constante valide
commence par une lettre ou un trait de soulignement (pas de signe $ avant le nom de la
constante).
define(name, value)
define("PI", 3.14);
echo PI;

define("PI", 3.14);
echo pi; //ERROR

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 18/25


Les opérateurs <h1>Example :</h1>
<?php
$x = 50;
 Arithmétiques: + (addition), - (soustraction), * $y = 30;
(multiplication), / (division), % (modulo), ++ if ($x == 50 and $y == 30)
echo "and Success <br>";
(incrémentation), --(décrémentation), * * (Exponentiation)
if ($x == 50 or $y == 20)
 Comparaison : ==(égalé), <(inférieur strict), <= echo "or Success <br>";

(inférieur ou égal), > , >=, != <> (différent) if ($x == 50 xor $y == 20)


echo "xor Success <br>";
 Logiques : and, && (et), or, || (ou), xor (ou exclusif), !
if ($x == 50 && $y == 30)
(non) echo "&& Success <br>";

if ($x == 50 || $y == 20)
echo "|| Success <br>";

if (!($x==10))
echo "! Success <br>";
?>

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 19/25


Les variables et les opérateurs
$x;

if(empty($x)){
 empty($var) : renvoie vrai si la variable est vide echo 'variable is empty!';
};
 isset($var) : renvoie vrai si la variable existe
$y=10;
 unset($var) : détruit une variable if(isset($y)){
echo 'variable exist and setted with
 gettype($var) : retourne le type de la variable value!';
};
 settype($var, ’’type’’) : convertit la variable en type
unset($y);
 is_long(), is_double(), is_string(), is_array(), is_object(), echo "there is no y variable!";

is_bool(), is_float(), is_numeric(), is_integer(), is_int()… $a=100;


echo gettype($a); //integer
settype($a,"string");
echo gettype($a); //string;

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 20/25


Structures conditionnelles en PHP
$favcolor = "red";
$t = date("H");
echo "<p>The hour (of the server) is " . $t; switch ($favcolor) {
echo ", and will give the following case "red":
message:</p>"; echo "Your favorite color is red!";
break;
if ($t < "10") { case "blue":
echo "Have a good morning!"; echo "Your favorite color is blue!";
} elseif ($t < "20") { break;
echo "Have a good day!"; case "green":
} else { echo "Your favorite color is green!";
echo "Have a good night!"; break;
} default:
echo "Your favorite color is neither red,
blue, nor green!";
}

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 21/25


Les boucles en PHP

 Les boucles permettre d'effectuer un certain nombre de


fois les mêmes opérations.

 Boucle for - parcourt un bloc de code plusieurs fois

 Boucle while - tant qu'une condition spécifiée est vraie


exécute un bloc de code

 Boucle do/while - exécute un bloc de code tant qu'une


condition spécifiée est vraie

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 22/25


Exercice 1
Un étudiant qui passe un examen est reçu lorsque sa moyenne est supérieure ou égale à 10.
Créez un script en tenant compte des éléments suivants :

1. Déclarez et initialisez une variable $moyenne.

2. Affectez la valeur true ou false à une variable $recu, selon la valeur de $moyenne.

3. Affichez une phrase indiquant à l’étudiant s’il est reçu ou recalé, par exemple « avec une moyenne de 11, vous
êtes reçu. » ou bien « avec une moyenne de 7, vous n’êtes pas reçu. ».

4. Vérifiez que votre code fonctionne bien en modifiant la valeur initiale de $moyenne.

NB: tous les messages doivent être affichés en paragraphes html avec la note en gras.

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 23/25


Exercice 1 (suite)

Notre étudiant peut ne pas être simplement reçu ou recalé, mais également avoir accès au repêchage ou obtenir
une mention. Créez un autre script avec les consignes suivantes :
1. La note minimale pour le repêchage est 8.

2. Les paliers pour une mention sont 12 (assez bien), 14 (bien) et 16 (très bien).

3. La phrase affichée doit prendre en compte tous les cas de figure. Par exemple, « avec une moyenne de 9, vous
avez accès au repêchage. », ou bien « avec une moyenne de 7, vous n’êtes pas reçu. » ou encore « avec une
moyenne de 13, vous obtenez la mention assez bien. ».

4. Faites varier la valeur initiale de $moyenne pour vérifier que votre code fonctionne bien.
NB: tous les messages doivent être affichés en paragraphes html avec la note en gras.
Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 24/25
Exercice 2

1. Déclarer un nombre $initial avec une valeur supérieure à 100 et inférieure à 1000 en utilisant la boucle "
while" effectuer des tirages aléatoires des nombres jusqu'à obtenir la même valeur du $initial et afficher le
nombre d'itérations réalisées. Donnez une variante avec la boucle do ....while.

2. Ecrivez un script qui affiche les multiples du nombre 3 inférieurs à un nombre donné.

Mr. Amine ZEGUENDRY | A.Zeguendry@emsi.ma 25/25

Vous aimerez peut-être aussi