0% ont trouvé ce document utile (0 vote)
70 vues50 pages

PHP Course1

Ce document décrit les bases du langage PHP et du fonctionnement des sites web dynamiques. Il explique la différence entre sites statiques et dynamiques, et introduit les concepts clés liés au protocole HTTP, aux requêtes GET et POST, ainsi qu'aux codes de réponse.

Transféré par

Elhayj Hamza
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
70 vues50 pages

PHP Course1

Ce document décrit les bases du langage PHP et du fonctionnement des sites web dynamiques. Il explique la différence entre sites statiques et dynamiques, et introduit les concepts clés liés au protocole HTTP, aux requêtes GET et POST, ainsi qu'aux codes de réponse.

Transféré par

Elhayj Hamza
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 50

ZH

Langage Script
ZH

L'objectif de ce cours est d'apprendre à créer un site Web simple fonctionnel


en utilisant le langage PHP avec le framework symfony

Nous allons découvrir comment :

Créez des pages Web dynamiques avec PHP et symfony.

Transmettre des données entre ces pages.

Stocker des informations dans une base de données relationnelle.


ZH
Fonctionnement web ZH

• Pour consulter un site Web sur Internet, il suffit de taper l'adresse correcte du site dans la barre d'adresse d'un navigateur Web,
et le site s'affiche (si l'accès au réseau fonctionne).

Serveur Web : Pour être accessible, un site Web doit être publié sur un serveur.
Un serveur est un type particulier d'ordinateur dont le rôle est d'attendre les demandes de clients, et d'y répondre.
Un serveur rend un service à ses clients.

Il existe de nombreux types de serveurs, en fonction du service rendu : serveur de fichiers, de messagerie, d'authentification...
Un serveur qui permet de publier des sites Web est appelé serveur Web.

Note : une même machine peut rendre différents services (exemple : serveur Web et serveur de fichiers).
Plus précisément, une machine serveur Web embarque et exécute un logiciel serveur, capable de répondre aux demandes
de consultations de sites Web. Les logiciels serveurs Web les plus populaires sont Apache, Microsoft IIS et nginx.
Fonctionnement web ZH

Client Web: La machine qui permet la consultation du site Web demandé est appelé client Web.
Il s'agit d'un abus de langage : en réalité, le véritable client est un logiciel qui s'exécute sur cette machine
et réalise l'opération de consultation. Ce logiciel est le plus souvent un navigateur Web (browser).

Les navigateurs Web les plus populaires sont Internet Explorer, Mozilla Firefox, Chrome, Safari et Opera.
D'autres types de logiciels que les navigateurs peuvent jouer le rôle de clients Web en se connectant à des serveurs Web.

Exemples : robots d'indexation, aspirateurs Web, applications mobiles, etc.


Fonctionnement web ZH

La compréhension des échanges ayant lieu entre un client et un serveur Web lors de la consultation d'un site est essentielle.
Il s'agit d'un mécanisme de type requête/réponse:

1. L'échange est initié par le client, qui envoie au serveur une requête pour consulter une ressource Web.
2. Le serveur prépare la page HTML associée.
3. Le serveur renvoie la page HTML au client, qui l'affiche.

Afin de se comprendre, client et serveur Web utilisent pendant leurs échanges un protocole commun : HTTP.
Protocoles HTTP ZH

HTTP (HyperText Transfert Protocol) est le protocole de transfert du Web. Créer en 1989 au CERN de Genève, en même temps que le
langage HTML, qui a conduit à l'apparition du World Wide.

HTTP est fondamentalement un protocole très simple, basé sur des commandes textuelles.

Le fonctionnement du HTTP peut être expliqué très simplement à travers la consultation d’un site Internet :

1. L’utilisateur saisit dans la barre d’adresse de son navigateur Internet example.com.


2. Le navigateur envoie une requête correspondante, appelée requête HTTP, au serveur Web qui administre le domaine example.com.
Normalement, cette requête est de type : « Merci de m’envoyer le fichier ». Mais le client peut également se contenter de demander :
« As-tu ce fichier ? ».
3. Le serveur Web reçoit la requête HTTP, cherche le fichier désiré (dans l’exemple : la page d’accueil de example.com, c’est-à-dire le
fichier index.html) et envoie dans un premier temps l’en-tête qui informe le client à l’origine de la requête du résultat de sa recherche à
l’aide d’un code de statut. Vous trouverez des détails concernant les codes de statut dans notre article détaillé.

Si le fichier a été trouvé et si le client demande à l’obtenir (c’est-à-dire si le client ne souhaite pas uniquement savoir s’il existe), après
l’en-tête, le serveur envoie le corps du message, à savoir le contenu à proprement parler. Dans notre exemple, il s’agit du
fichier index.html.
Le navigateur reçoit le fichier et l’affiche sous forme de site Internet.
ZH
Code de retours HTTP ZH

Ce code est destiné au client HTTP (et non à l'utilisateur) pour lui indiquer le statut de sa requête. Les codes
HTTP sont séparés en 5 familles, qui se distinguent par le premier digit du code retour :

•1xx : Informations
•2xx : Succès
•3xx : Redirections
•4xx : Erreur du client

Il existe plusieurs dizaines de code HTTP, mais certains sont plus utilisés que d'autres, en voici quelques-uns :

•200 OK : « Tout est bon »,

•201 Created: « Ressource ajoutée avec succès »,

•301 moved permanently: « ressource déménagé definitivement »

•401 Unauthorized: « Vous n'avez pas le droit d'accéder à cette ressource, il faut une authentification »,

•404 Not Found: « Ressource non trouvée »,

•500 Internal Server Error: « Erreur du serveur ».


GET vs POST ZH

Comparaison entre GET et POST:

GET POST

Visibilité Visible pour l’utilisateur dans le champ Invisible pour l’utilisateur


d’adresse
Marque-page et historique de navigation Les paramètres de l’URL sont stockés en L’URL est enregistrée sans paramètres
même temps que l’URL. URL.
Cache et fichier log du serveur Les paramètres de l’URL sont stockés sans Les paramètres de l’URL ne sont pas
chiffrement enregistrés automatiquement.
Comportement lors de l’actualisation du Les paramètres de l’URL ne sont pas Le navigateur avertit que les données du
navigateur / Bouton « précédent » envoyés à nouveau. formulaire doivent être renvoyées.
Type de données Caractères ASCII uniquement. Caractères ASCII mais également données
binaires.

Longueur des données Limitée - longueur maximale de l’URL à 2 Illimitée.


048 caractères.

Source :
https://www.w3schools.com/tags/ref_httpmethods.asp
GET VS POST ZH

Quand utiliser quelle méthode ?

❑ POST est presque toujours favorisé lorsque l’utilisateur doit soumettre des données ou des fichiers au serveur, par exemple pour remplir
des formulaires ou télécharger des photos.

❑ GET est particulièrement bien adapté pour personnaliser les sites Web : les recherches des utilisateurs, les paramètres de filtrage et le
tri des listes peuvent être mis en marque-page avec l’URL, de sorte qu’à la prochaine visite du site, l’utilisateur retrouvera la page telle
qu’il l’a laissée.

Une simple « règle de base » pour finir :

❑ GET pour les paramètres d’un site Web (filtres, tri, saisies de recherche, etc.).

❑ POST pour la transmission des informations et des données de l’utilisateur.


ZH

Les bases du Php


PHP ZH

L’évolution du web statique au dynamique :

Les tous premiers sites Web créés dans les années 1990 étaient composés uniquement de pages HTML
(pour le contenu) et de fichiers CSS (pour la mise en forme du contenu), et éventuellement d'autres
types de ressources comme par exemple des images.

La consultation d'un site Web statique met en jeu deux logiciels :


• Le logiciel client, le plus souvent un navigateur Web.
• Le logiciel serveur Web.

Lorsqu'un client envoie une requête au serveur Web hébergeant un site statique, le serveur se contente
de renvoyer la ressource demandée. Les pages HTML affichées ne peuvent pas évoluer
automatiquement, d'où le terme "statique".

La mise à jour d'un site Web statique nécessite l'édition des fichiers sources, puis la mise en ligne des
modifications (publication sur le serveur Web).
PHP ZH

L’évolution du web statique au dynamique :

L'explosion de la popularité du Web au début des années 2000 a provoqué l'appatition de nouveaux
besoins et conduit à l'émergence des sites Web dynamiques. A l'inverse d'un site statique, un site
dynamique est un type de site Web dans lequel le contenu des pages est construit au moment de la
requête du client.
Lorsqu'un client envoie une requête au serveur Web hébergeant un site dynamique, le serveur prépare
la page HTML correspondant à cette requête, puis la renvoie au client pour affichage. Les pages Web
affichées au visiteur ne sont pas figées comme dans le cas d'un site statique, mais générées au moment
de leur consultation.
PHP ZH

Pour créer un site Web dynamique. il faut obligatoirement utiliser un langage capable de générer des
pages HTML. Le diagramme ci-dessous rassemble les principaux langages capables de réaliser cette
tâche.

source : https://w3techs.com/technologies/details/pl-php
Balises Php (tags) ZH

PHP (PHP Hypertext Preprocessor) est un langage de scripts généraliste et Open Source, spécialement conçu pour le développement
d'applications web. Il peut être intégré facilement au HTML.

<!DOCTYPE html>
<html>
<head>
<title>Exemple</title>
</head>
<body>

<?php
echo "Bonjour, je suis un script PHP !";
?>

</body>
</html>

Le code PHP est inclus entre une balise de début <?php et une balise de fin ?> qui permettent au serveur web de passer en mode PHP.
Balises Php ZH

Lorsque PHP traite un fichier, il cherche les balises d'ouverture et de fermeture (<?php et ?>) qui
délimitent le code qu'il doit interpréter. cela permet à PHP d'être intégré dans toutes sortes de
documents.
Tout ce qui se trouve en dehors des balises de PHP est ignoré.

On peut inclure aussi une balise ouvrante courte echo : <?= qui est un raccourci au code plus verbeux
<?php echo.

Les balises courtes sont disponibles par défaut, mais peuvent être désactivées soit via l'option
short_open_tag du fichier de configuration php.ini, ou sont désactivées par défaut si PHP est compilé
avec l'option --disable-short-tags.

En terme de compatibilité, il est conseillé d’utiliser les balises normales du script php
Commentaire ZH

PHP supporte les commentaires de type C, C++ et Shell Unix (aussi appelé style Perl).

<?php
echo 'Ceci est un test'; // Ceci est un commentaire sur une seule ligne, style c++
/* Ceci est un commentaire sur
plusieurs lignes */
echo 'Ceci est un autre test';
echo 'Et un test final'; # Ceci est un commentaire style shell sur une seule ligne
?>
Séparation des instructions ZH

PHP requiert que les instructions soient terminées par un point-virgule à la fin de chaque
instruction.

La balise fermante d'un bloc de code PHP implique automatiquement un point-virgule ; pas besoin
d'utiliser un point-virgule pour terminer la dernière ligne d'un bloc PHP.

La balise fermante d'un bloc inclue le caractère de nouvelle ligne suivi immédiatement si un est
présent.

<?php
echo 'This is a test';
?>

<?php echo 'This is a test' ?>

<?php echo 'We omitted the last closing tag';


Types de données ZH

PHP supporte 10 types basiques:


4 types scalaires :
• bool
• int
• float (nombre à virgule flottante)
• String

4 types composés :
• array (tableau)
• Object ( poo)
• Callable (fonctions)
• Iterable (boucles)

2 types spéciaux :
• Resource ( exemple d’un appel de base de données )
• NULL (Une variable de type NULL est une variable à laquelle aucune valeur n'est attribuée).
Affichage ZH

• echo 🡺 affichage des valeurs


• print 🡺 comme echo mais n’accepte de valeurs multiple séparés par virgule
• print_r() 🡺 imprime valeurs unique et tableaux
• var_dump() 🡺 information sur le type de données et longueur
• var_export() 🡺 représentation de la variable entant qu’une chaine de caractère
Types de données ZH

Les Variables sont :

• Sensible à la case
• Nom : $ suivit de lettres, chiffres et le underscore (_)
• Les alphabets et les alphanumériques
• Le type s'ajuste au contenu de la variable ( affectation dynamique)
Types de données ZH

• On peut mélanger les variables et les chaines de caractères:


• $var1 = 33.33;
• echo "Montant: ", $var1;
• echo "Montant: $var1";
• echo "Montant: ".$var1;
○ Le point "." est l'opérateur de concaténation

• Pour accéder à un caractère:


• $var = "Hello";
• echo $var1{2};
• echo $var1[2];
Pour imprimer un caractère spécial:
• echo chr(125); //caractère ASCII 125
Types de données ZH

• Fonction gettype(nom)
• Connaître le type d'une variable
• $test = 5;
• echo gettype( $test ); // integer
• settype(variable, type)
• Modifier le type d'une variable.
• $test = 8.54;
• settype($test, integer); //$test<=8
• Transtypage/ cast
• $test1 = 8.5;
• $test2 = (int) $test1;
Types de données ZH

Exemple:
<?php
$a_bool = TRUE; // un booléen
$a_str = "foo"; // une chaîne de caractères
$a_str2 = 'foo'; // une chaîne de caractères
$an_int = 12; // un entier

echo gettype($a_bool); // affiche : boolean


echo gettype($a_str); // affiche : string

// Si c'est un entier, incrément de 4


if (is_int($an_int)) {
$an_int += 4;
}

// Si $a_bool est une chaîne de caractères, on l'affiche


if (is_string($a_bool)) {
echo "String: $a_bool";
}
?>
Constante ZH

• Utiliser la fonction define( )


• Syntaxe :
– define(nom constante, valeur)
• Exemple :
– define("UTIL", "Gérald");
– define("CONSTANTE", 5);
○ Nom des constantes, en majuscule par convention.
– echo "Texte avant ". CONSTANTE ." Texte après";
○ Il faut entourer la constante de ". .", sinon elle s'affichera comme du texte.
Fonctions prédéfinies ZH

Quelques fonctions couramment utilisées pour manipuler les chaînes de caractères:

strlen() 🡺 renvoie la longueur d'une chaîne de caractères.

str_word_count() 🡺 compte le nombre de mots dans une chaîne de caractères.

strrev() 🡺 inverse une chaîne de caractères.

strpos() 🡺 recherche un texte spécifique dans une chaîne de caractères.


Si une correspondance est trouvée, la fonction renvoie la position du caractère de la première
correspondance. Si aucune correspondance n'est trouvée, elle renvoie FALSE.

str_replace() 🡺 remplace certains caractères par d'autres dans une chaîne de caractères.

str_split() 🡺 Divise une chaîne en un tableau


Fonctions prédéfinies ZH

Pour les fonctions mathématiques on retrouve:

pi() 🡺 renvoie la valeur de PI.

min() , max() 🡺 la valeur la plus basse ou la plus haute dans une liste d'arguments.

abs() 🡺 renvoie la valeur absolue (positive) d'un nombre.

sqrt() 🡺 renvoie la racine carrée d'un nombre.

round() 🡺 arrondit un nombre à virgule flottante au nombre entier le plus proche.

rand() 🡺 génère un nombre aléatoire


Les opérateurs ZH

Opérateur Nom Exemple


+ Addition $x + $y
- Soustraction $x - $y
* Multiplication $x * $y
/ Division $x / $y
% Modulo $x % $y
** Exponentiation $x ** $y
Les opérateurs ZH

Opérateur Nom Description


++$x Pré-incrémentation Incrémente de 1 puis renvoi la
valeur de $x
$x++ Post-incrémentation Renvoi la valeur de $x puis
incrémente de 1
--$x Pré-decrémentation Décrémente de 1 puis renvoi
la valeur de $x
$x-- Post-decrémentation Renvoi la valeur de $x puis
décrémente de 1
Les opérateurs ZH

Opérateur Nom Exemple


. concaténation $x.$y

.= Concaténation $x .= $y
affectation
Les opérateurs ZH

Les opérateurs logiques


Opérateur Nom Exemple
and ET $x and $y

or OU $x or $y

xor Xor $x xor $y

&& ET $x && $y

|| OU $x || $y

! NOT !$x
Les opérateurs ZH

Opérateurs de tableaux en PHP


Opérateur Nom Exemple Explication
+ Union $x + $y Union de $x et $y

== Egalité $x == $y Renvoie vrai si $x et $y ont les


mêmes paires clé/valeur

=== Identité $x === $y Retourne vrai si $x et $y ont les


mêmes paires clé/valeur, dans le
même ordre et de même type.

!= Inégalité $x != $y Retourne vrai si $x n'est pas égal à


$y

<> Inégalité $x <> $y Renvoie vrai si $x n'est pas égal à $y

!== Non-identité $x !== $y Retourne vrai si $x n'est pas


identique à $y
Les opérateurs ZH

Opérateurs d'affectation conditionnelle en PHP


Opérateur Nom Exemple Explication

?: Ternaire $x = expr1 ? expr2 : expr3 Renvoie la valeur de $x.


La valeur de $x est expr2 si expr1 =
VRAI.
La valeur de $x est expr3 si expr1 =
FALSE.

?? Coalescence nulle $x = expr1 ?? expr2 Renvoie la valeur de $x.


La valeur de $x est expr2 si expr1 =
VRAI.
La valeur de $x est expr3 si expr1 =
FALSE.
Les opérateurs ZH

Opérateurs de comparaison
Opérateur Nom Exemple Explication
?: Ternaire $x = expr1 ? expr2 : expr3 Renvoie la valeur de $x.
La valeur de $x est expr2 si expr1 = VRAI.
La valeur de $x est expr3 si expr1 = FALSE.
?? Coalescence nulle $x = expr1 ?? expr2 Renvoie la valeur de $x.
La valeur de $x est expr2 si expr1 = VRAI.
La valeur de $x est expr3 si expr1 = FALSE.
Les structures de contrôle ZH

Pour l'instruction if c’est les mêmes fonctionnalités qu’en C.

<?php
if ($x > $y)
echo "x est plus grand que y";
?>

<?php
if ($x > $y) {
echo "x est plus grand que y";
$y = $x;
}
?>
Les structures de contrôle ZH

Lorsque la condition if n’est pas remplie , on utilise le else si


l'expression du if est false. Pour combiner le if et le else on n’a
le elseif:

<?php
if ($x > $y) {
echo "x est plus grand que y";
} else {
echo "x est plus petit que y";
} <?php
?> if ($x > $y) {
echo "x est plus grand que y";
} elseif ($x == $y) {
echo "x est égal à y";
} else {
echo "x est plus petit que y";
}
?>
Les structures de contrôle ZH

On retrouve aussi quelques syntaxes alternatives du if:

<?php if ($x == 9): ?>


X égal 9
<?php endif; ?>

<?php
if ($x == 9):
echo "x égale 9";
echo "...";
elseif ($x == 13):
echo "x égale 13";
echo "!!!";
else:
echo "a ne vaut ni 9 ni 19";
endif;
?>
Les structures de contrôle ZH

While et do\while
<?php <?php
/* exemple 1 */ $i = 0;
do {
$i = 1; echo $i;
while ($i <= 10) { } while ($i > 0);
echo $i++; /* La valeur affichée est $i ?>
avant l'incrémentation */
} <?php
do {
/* exemple 2 */ if ($i < 5) {
echo "i n'est pas suffisamment grand";
break;
$i = 1;
}
while ($i <= 10): $i *= $factor;
echo $i; if ($i < $minimum_limit) {
$i++; break;
endwhile; }
?> echo "i est bon";

/* ...traitement de i... */

} while (0);
?>
Les structures de contrôle ZH

While et do\while
<?php <?php
/* exemple 1 */ $i = 0;
do {
$i = 1; echo $i;
while ($i <= 10) { } while ($i > 0);
echo $i++; /* La valeur affichée est $i ?>
avant l'incrémentation */
} <?php
do {
/* exemple 2 */ if ($i < 5) {
echo "i n'est pas suffisamment grand";
break;
$i = 1;
}
while ($i <= 10): $i *= $factor;
echo $i; if ($i < $minimum_limit) {
$i++; break;
endwhile; }
?> echo "i est bon";

/* ...traitement de i... */

} while (0);
?>
Les structures de contrôle ZH

● PHP exécute l'instruction tant que l'expression de la boucle


while est évaluée comme True.

● La valeur de l'expression est vérifiée à chaque début de boucle,


et, si la valeur change durant l'exécution de l'instruction,
l'exécution ne s'arrêtera qu'à la fin de l'itération.

● Si l'expression du while est False avant la première itération,


l'instruction ne sera jamais exécutée.
Les structures de contrôle ZH

● Pour la boucle do\while , l'expression est testée à la fin de


chaque itération plutôt qu'au début.

● La première itération de la boucle do-while est toujours


exécutée
( le test n’est effectué qu'à la fin de l’itération )
Les structures de contrôle ZH

La syntaxe des boucles for est la suivante :

for (expr1; expr2; expr3)


commandes
La première expression (expr1) est évaluée (exécutée), quoi qu'il arrive au début de
la boucle.
Au début de chaque itération, l'expression expr2 est évaluée. Si l'évaluation vaut
true, la boucle continue et les commandes sont exécutées. Si l'évaluation vaut
false, l'exécution de la boucle s'arrête.
À la fin de chaque itération, l'expression expr3 est évaluée (exécutée).
Les structures de contrôle ZH

La syntaxe des boucles foreach est la suivante :


foreach (iterable_expression as $value){
//commandes
}

foreach (iterable_expression as $key => $value){


//commandes
}
foreach ne fonctionne que pour les tableaux et les objets, et émet une erreur si vous tentez de
l'utiliser sur une variable de type différent ou une variable non initialisée.
La première forme passe en revue le tableau iterable_expression. À chaque itération, la valeur de
l'élément courant est assignée à $value.
La seconde forme assignera en plus la clé de l'élément courant à la variable $key à chaque
itération.
Les structures de contrôle ZH

for et foreach
<?php <?php
$arr = array(1, 2, 3, 4); /* exemple 1 */
foreach ($arr as &$value) {
for ($i = 1; $i <= 10; $i++) {
$value = $value * 2;
echo $i;
} }
// $arr vaut maintenant array(2, 4,
6, 8) /* exemple 2 */
unset($value); // Détruit la
référence sur le dernier élément for ($i = 1; ; $i++) {
?> if ($i > 10) {
break;
}
echo $i;
}

L'instruction break permet de sortir d'une structure for, foreach, while, do-while ou switch
Les structures de contrôle ZH

for et foreach
<?php <?php
$arr = array(1, 2, 3, 4); /* exemple 1 */
foreach ($arr as &$value) {
for ($i = 1; $i <= 10; $i++) {
$value = $value * 2;
echo $i;
} }
// $arr vaut maintenant array(2, 4,
6, 8) /* exemple 2 */
unset($value); // Détruit la
référence sur le dernier élément for ($i = 1; ; $i++) {
?> if ($i > 10) {
break;
}
echo $i;
}

L'instruction break permet de sortir d'une structure for, foreach, while, do-while ou switch le contraire de continue qui permet de
commencer la prochaine itération.
Les structures de contrôle ZH

switch -case
Switch-case est l'équivalent de plusieurs instructions if et l'exécution se fait par ordre.

<?php
// Ce switch:

switch ($i) {
if ($i == 0) {
case 0: echo "i égal 0";
echo "i égal 0"; } elseif ($i == 1) {
break; echo "i égal 1";
case 1: } elseif ($i == 2) {
echo "i égal 1"; echo "i égal 2";
break; }
case 2: ?>
echo "i égal 2";
break;
}
ZH

TP1
ZH

EX1: vérifier dans une expression conditionnelle si une variable est multiple de 7 et 9. (if / else)

Ex2: Effectuer une suite de tirages de nombres aléatoires jusqu’à obtenir une suite composée d’un nombre pair suivi de
deux nombres impairs. ( do / while)

Ex3: Créer un tableau dont les indices varient de 10 à 50 et dont les valeurs sont des lettres de A à Z. Lire ensuite ce tableau
avec une boucle for puis une boucle foreach et afficher les indices et les valeurs ( indice : fonction chr(n) )

Ex4: Utiliser une boucle while pour déterminer le premier entier obtenu par tirage aléatoire qui soit un multiple d’un nombre
donné. Écrire la variante utilisant la boucle do…while

Ex5: En utilisant la fonction strlen() écrivez une boucle qui affiche chaque lettre de la chaîne Hello world sur une ligne
différente.

Ex6: Écrivez un tableau multidimensionnel associatif dont les clés sont des noms de personne et les valeurs des tableaux
indicés contenant le prénom, la ville de résidence et l'âge de la personne , afficher les valeurs du tableaux avec une boucle
while.
*
**
Ex7: En utilisant deux boucles for, écrire un script qui produit le triangle d’or: ***
****
*****
******
*******
********
*********
**********
ZH
Ex 8: En utilisant la fonction rand(), remplir un tableau avec 10 nombres aléatoires. Puis, trier les valeurs dans deux
tableaux distincts. Le premier contiendra les valeurs inférieures à 30 et le second contiendra les valeurs supérieures ou
égales à 30. Enfin, afficher le contenu des deux tableaux.

Ex 9: Écrivez un programme PHP pour supprimer les doublons d’un tableau triée.( on utilise la fonction array_unique)

Ex 10: Écrivez un programme PHP pour afficher la table de multiplication jusqu’à 3 * 5. ( on utilise la fonction str_pad)

Vous aimerez peut-être aussi