Vous êtes sur la page 1sur 41

Technologie Web support de cours

Langage

Mr TAOUAF .L Année universitaire 2017/20418 1


Technologie Web support de cours

Sommaire
Langage .............................................................................................................. 1
Syntaxe de base .............................................................................................. 4
Pourquoi PHP .................................................................................................. 4
Syntaxe PHP .................................................................................................... 4
Déclarations PHP ............................................................................................. 5
Commentaires................................................................................................. 6
Variables ......................................................................................................... 6
Constantes ...................................................................................................... 7
Types de données ........................................................................................... 8
PHP String .................................................................................................... 8
PHP Entier .................................................................................................... 9
PHP Float...................................................................................................... 9
PHP Boolean ................................................................................................ 9
Variables variables ..................................................................................... 11
Les opérateurs .............................................................................................. 11
Module ...................................................................................................... 12
Incrément et décrément ............................................................................ 12
Opérateurs d'affectation ............................................................................ 13
Opérateurs de comparaison ....................................................................... 14
Opérateurs logiques ................................................................................... 15
Tableaux........................................................................................................ 16
Tableaux numériques ................................................................................. 16
Tableaux associatifs ................................................................................... 17
Tableaux multidimensionnels .................................................................... 17
Expressions conditionnelles .......................................................................... 18
elseif .......................................................................................................... 18

Mr TAOUAF .L Année universitaire 2017/20418 2


Technologie Web support de cours

l'instruction Elseif ....................................................................................... 19


Les Boucles.................................................................................................... 20
La boucle du temps .................................................................................... 20
La boucle do ... while.................................................................................. 21
La boucle for .............................................................................................. 21
La boucle foreach ....................................................................................... 22
L'instruction Statement .............................................................................. 23
L'instruction défaut ................................................................................... 25
l'instruction break ...................................................................................... 26
l'instruction continue ................................................................................ 26
Include : ..................................................................................................... 27
Les fonctions ................................................................................................. 28
Paramètres de fonction................................................................................. 29
Arguments par défaut ................................................................................ 29
l'instruction Return ................................................................................... 30
Variables prédéfinies..................................................................................... 30
Formes .......................................................................................................... 32
POST.............................................................................................................. 34
GET................................................................................................................ 34
Les Sessions................................................................................................... 35
Les cookies: ................................................................................................... 36
Les opérations sur les fichiers ...................................................................... 37
Écrire dans un fichier..................................................................................... 38
l'instruction fclose ()...................................................................................... 39
Ajouter un fichier .......................................................................................... 39
Lire un fichier ................................................................................................ 40

Mr TAOUAF .L Année universitaire 2017/20418 3


Technologie Web support de cours

1. Syntaxe de base

PHP: Hypertext Preprocessor (PHP) est un langage de script libre, très populaire et open
source. Les scripts PHP sont exécutés sur le serveur. Juste une courte liste de ce que PHP est
capable de:

- Génération de contenu de page dynamique

- Création, ouverture, lecture, écriture, suppression et fermeture de fichiers sur le serveur

- Collecte des données de formulaire

- Ajout, suppression et modification des informations stockées dans une base de données

- contrôler l'accès des utilisateurs

- chiffrer les données.....etc

Avant de commencer ce cours, vous devriez avoir une compréhension de base du HTML.

PHP a assez de puissance pour fonctionner au cœur de WordPress, le système de blogging le


plus actif sur le web. Il a également le degré de profondeur requis pour exécuter Facebook, le
plus grand réseau social du Web!

1.1.Pourquoi PHP
PHP fonctionne sur de nombreuses plateformes variées, y compris Windows, Linux, Unix,
Mac OS X, etc.

PHP est compatible avec presque tous les serveurs modernes, tels qu'Apache, IIS et plus
encore.

PHP supporte un large éventail de bases de données.

PHP est gratuit!

PHP est facile à apprendre et fonctionne efficacement côté serveur.

1.2.Syntaxe PHP
Un script PHP commence par <? Php et se termine par?>:

<? php

// Le code PHP va ici

?>

Mr TAOUAF .L Année universitaire 2017/20418 4


Technologie Web support de cours

Voici un exemple de fichier PHP simple. Le script PHP utilise une fonction intégrée appelée
"echo" pour sortir le texte "Hello World!" à une page Web.

<html>
<head>
<title>My First PHP Page</title>
</head>
<body>
<?php
echo "Hello World!";
?>
</body>
</html>

Les instructions PHP se terminent par des points-virgules (;)

PHP a une fonction "echo" intégrée, qui est utilisée pour sortir le texte.En réalité, ce n'est pas
une fonction; c'est une construction de langage. En tant que tel, il ne nécessite pas de
parenthèses.

Générons un texte.

<?php
echo "j'ai programmé a laide de PHP!";
?>

1.3.Déclarations PHP

Chaque instruction PHP doit se terminer par un point-virgule.

<? php
écho "A";
écho "B";
écho "C";
?>

Mr TAOUAF .L Année universitaire 2017/20418 5


Technologie Web support de cours

1.4.Commentaires
Dans le code PHP, un commentaire est une ligne qui n'est pas exécutée dans le cadre du
programme. Vous pouvez utiliser des commentaires pour communiquer avec les autres afin
qu'ils comprennent ce que vous faites, ou pour vous rappeler ce que vous avez fait.

Un commentaire sur une seule ligne commence par //:

<?php
echo "<p>Hello World!</p>";
// This is a single-line comment
echo "<p>I am learning PHP!</p>";
echo "<p>This is my first program!</p>";
?>

Résultat:

2. Variables

Les variables sont utilisées comme "conteneurs" dans lesquels nous stockons des
informations. Une variable PHP commence par un signe dollar ($), suivi du nom de la
variable.

$ non_de_variable = valeur;

Règles pour les variables PHP:

- Un nom de variable doit commencer par une lettre ou un trait de soulignement

Mr TAOUAF .L Année universitaire 2017/20418 6


Technologie Web support de cours

- Un nom de variable ne peut pas commencer par un nombre

- Un nom de variable ne peut contenir que des caractères alphanumériques et des traits de
soulignement (A-z, 0-9 et _)

- Les noms de variables sont sensibles à la casse ($ nom et $ NOM sont deux variables
différentes)

Par exemple:

<?php
$nom = 'John';
$age = 25;
echo $nom;
// Outputs 'John'
?>

Dans l'exemple ci-dessus, notez que nous n'avions pas besoin de dire à PHP quel type de
données est la variable.
PHP convertit automatiquement la variable en type de données correct, en fonction de sa
valeur.
Contrairement à d'autres langages de programmation, PHP n'a pas de commande pour
déclarer une variable. Il est créé au moment où vous lui attribuez d'abord une valeur.

2.1.Constantes

Les constantes sont similaires aux variables sauf qu'elles ne peuvent pas être modifiées ou
indéfinies après leur définition.

Commencez le nom de votre constante avec une lettre ou un trait de soulignement.

Pour créer une constante, utilisez la fonction define ():

define (nom, valeur, insensible à la casse)

Paramètres:

nom: Spécifie le nom de la constante;

valeur: Spécifie la valeur de la constante;

insensible à la casse: Indique si le nom de la constante doit être insensible à la casse. La


valeur par défaut est faux;

Mr TAOUAF .L Année universitaire 2017/20418 7


Technologie Web support de cours

L'exemple ci-dessous crée une constante avec un nom sensible à la casse:

<?php

define("MSG", "Hi, PHP!");


echo MSG;

// Outputs "Hi PHP!"


?>

L'exemple ci-dessous crée une constante avec un nom insensible à la casse:

<?php
define("MSG", " Hi
SoloLearners!", true);
echo msg;

// Outputs "Hi
SoloLearners!"
?>

Remarque: Aucun signe dollar ($) n'est nécessaire avant le nom de la constante.

2.2.Types de données
Les variables peuvent stocker une variété de types de données.

Types de données pris en charge par PHP: String, Integer, Float, Booléen, Array, Object,
NULL, Resource.

2.2.1.PHP String
est une séquence de caractères, comme "Hello world!"

String peut être n'importe quel texte dans un ensemble de guillemets simples ou doubles.

<?php
$string1 = "Hello world!"; //double
quotes
$string2 = 'Hello world!'; //single
quotes
?>

Mr TAOUAF .L Année universitaire 2017/20418 8


Technologie Web support de cours

Vous pouvez joindre deux chaînes à l'aide de l'opérateur de concaténation point (.).

Par exemple: echo $ s1. $ s2

2.2.2.PHP Entier
Un nombre entier est un nombre entier (sans décimales) qui doit correspondre aux critères
suivants:

- Il ne peut pas contenir de virgules ou d'espaces

- Il ne doit pas avoir un point décimal

- Il peut être positif ou négatif

<?php
$int1 = 42; // positive
number
$int2 = -42; // negative
number
?>

2.2.3.PHP Float

Un flottant ou un nombre à virgule flottante est un nombre qui inclut un point décimal

<?php
$x = 42.168;
?>

2.2.4.PHP Boolean

Un booléen représente deux états possibles: VRAI ou FAUX.

<?php
$x = true;
$y = false;
?>
Les booléens sont souvent utilisés dans les tests conditionnels, qui seront abordés plus tard
dans le cours.

Mr TAOUAF .L Année universitaire 2017/20418 9


Technologie Web support de cours

La plupart des types de données peuvent être utilisés en combinaison les uns avec les autres.
Dans cet exemple, string et integer sont mis ensemble pour déterminer la somme de deux
nombres.

<?php
$str = "10";
$int = 20;
$sum = $str + $int;
echo ($sum);

// Outputs 30
?>

PHP convertit automatiquement chaque variable en type de données correct, en fonction de sa


valeur. C'est pourquoi la variable $ str est traitée comme un nombre dans l'addition.

Les variables PHP peuvent être déclarées n'importe où dans le script.La portée d'une variable
est la partie du script dans laquelle la variable peut être référencée ou utilisée.

Les étendues de variables les plus utilisées de PHP sont locales, globales.
Une variable déclarée en dehors d'une fonction a une portée globale.
Une variable déclarée dans une fonction a une portée locale et n'est accessible que dans cette
fonction.
Considérez l'exemple suivant.

<?php
$name = 'David';
function getName() {
echo $name;
}
getName();

// Error: Undefined variable: name


?>

Ce script produira une erreur, car la variable $ name a une portée globale et n'est pas
accessible dans la fonction getName (). Appuyez sur Continuer pour voir comment les
fonctions peuvent accéder aux variables globales. Les fonctions seront discutées dans les
prochaines leçons.

Mr TAOUAF .L Année universitaire 2017/20418 10


Technologie Web support de cours

3.Variables variables

Avec PHP, vous pouvez utiliser une variable pour spécifier le nom d'une autre variable.
Ainsi, une variable variable traite la valeur d'une autre variable comme son nom.

Par exemple:

<?php
$a = 'hello';
$hello = "Hi!";
echo $$a;
// Outputs 'Hi!'
?>

$$ a :est une variable qui utilise la valeur d'une autre variable, $ a, comme nom. La valeur de
$ a: est égale à " hello ". La variable résultante est $ hello, qui contient la valeur "Hi!".

3.1.Les opérateurs

Les opérateurs effectuent des opérations sur des variables et des valeurs

Mr TAOUAF .L Année universitaire 2017/20418 11


Technologie Web support de cours

Example:

Module

L'opérateur de module, représenté par le signe%, renvoie le reste de la division du premier


opérande par le deuxième opérande

Remarque: Si vous utilisez des nombres à virgule flottante avec l'opérateur de module, ils
seront convertis en entiers avant l'opération.

Incrément et décrément

Les opérateurs d'incrémentation sont utilisés pour incrémenter la valeur d'une variable.

Les opérateurs de décrément sont utilisés pour décrémenter la valeur d'une variable.

Mr TAOUAF .L Année universitaire 2017/20418 12


Technologie Web support de cours

Les opérateurs d'incrémentation et de décrémentation précèdent ou suivent une variable

La différence est que le post-incrément renvoie la valeur d'origine avant de modifier la


variable, tandis que le pré-incrément modifie d'abord la variable, puis renvoie la valeur.

Exemple:

Opérateurs d'affectation
Les opérateurs d'affectation sont utilisés pour écrire des valeurs dans des variables.

$ num1 et $ num2 contiennent maintenant la valeur de 5.

Les affectations peuvent également être utilisées conjointement avec les opérateurs
arithmétiques.

Mr TAOUAF .L Année universitaire 2017/20418 13


Technologie Web support de cours

Example:

Opérateurs de comparaison
Les opérateurs de comparaison comparent deux valeurs (nombres ou chaînes).

Les opérateurs de comparaison sont utilisés dans les instructions conditionnelles et évaluent
TRUE ou FALSE.

Mr TAOUAF .L Année universitaire 2017/20418 14


Technologie Web support de cours

Opérateurs de comparaison supplémentaires:

Opérateurs logiques
Les opérateurs logiques sont utilisés pour combiner des instructions conditionnelles.

Mr TAOUAF .L Année universitaire 2017/20418 15


Technologie Web support de cours

Tableaux
Un tableau est une variable spéciale qui peut contenir plusieurs valeurs à la fois.

Si vous avez une liste d'éléments (une liste de noms, par exemple), les stocker dans des
variables simples ressemblerait à ceci:

Mais que faire si vous avez 100 noms sur votre liste? La solution: Créer un tableau!

Tableaux numériques
Les tableaux numériques ou indexés associent un index numérique à leurs valeurs.

L'index peut être affecté automatiquement (l'index commence toujours à 0), comme ceci:

Vous pouvez également affecter votre index manuellement.

Nous avons défini un tableau appelé $ names qui stocke trois valeurs.

Vous pouvez accéder aux éléments du tableau à travers leurs index.

Rappelez-vous que le premier élément d'un tableau a l'index de 0, pas 1.

Vous pouvez regrouper des entiers, des chaînes et d'autres types de données dans un tableau.

Mr TAOUAF .L Année universitaire 2017/20418 16


Technologie Web support de cours

Exemple:

Tableaux associatifs
Les tableaux associatifs sont des tableaux qui utilisent des clés nommées que vous leur
attribuez.

Il existe deux façons de créer un tableau associatif:

Dans le premier exemple, notez l'utilisation des signes => dans l'affectation des valeurs aux
clés nommées.

Utilisez les clés nommées pour accéder aux membres du tableau.

Tableaux multidimensionnels

Un tableau multidimensionnel contient un ou plusieurs tableaux.

La dimension d'un tableau indique le nombre d'indices dont vous auriez besoin pour
sélectionner un élément.
- Pour un tableau à deux dimensions, vous avez besoin de deux indices pour sélectionner un
élément
- Pour un tableau en trois dimensions, vous avez besoin de trois indices pour sélectionner un
élément
Les tableaux de plus de trois niveaux de profondeur sont difficiles à gérer.

Mr TAOUAF .L Année universitaire 2017/20418 17


Technologie Web support de cours

Créons un tableau à deux dimensions qui contient 3 tableaux:

Maintenant, le tableau $ people à deux dimensions contient trois tableaux, et il a deux indices:
ligne et colonne.
Pour accéder aux éléments du tableau $ people, nous devons pointer vers les deux indices.

Les tableaux du tableau multidimensionnel peuvent être à la fois numériques et associatifs.

Expressions conditionnelles

Les instructions conditionnelles effectuent différentes actions pour différentes décisions.


L'instruction if else est utilisée pour exécuter un certain code si une condition est vraie et un
autre code si la condition est fausse.
Syntaxe:

Vous pouvez également utiliser l'instruction if sans l'instruction else, si vous n'avez rien à
faire, dans le cas où la condition est fausse.

elseif
L'exemple ci-dessous affichera le plus grand nombre des deux.

Mr TAOUAF .L Année universitaire 2017/20418 18


Technologie Web support de cours

l'instruction Elseif

Utilisez l'instruction if ... elseif ... else pour spécifier une nouvelle condition à tester, si la
première condition est fausse.
Syntaxe:

Vous pouvez ajouter autant d'instructions elseif que vous le souhaitez. Notez simplement que
l'instruction elseif doit commencer par une instruction if.
Par exemple:

Nous avons utilisé l'opérateur logique AND (&&) pour combiner les deux conditions et
vérifier si $ age se situe entre 13 et 19.

Mr TAOUAF .L Année universitaire 2017/20418 19


Technologie Web support de cours

Les Boucles

Lorsque vous écrivez du code, vous pouvez souhaiter que le même bloc de code s'exécute
encore et encore. Au lieu d'ajouter plusieurs lignes de code presque égales dans un script,
nous pouvons utiliser des boucles pour effectuer une tâche comme celle-ci.

La boucle du temps

La boucle while exécute un bloc de code tant que la condition spécifiée est vraie.
Syntaxe:

Si la condition ne devient jamais fausse, l'instruction continuera à s'exécuter indéfiniment.

L'exemple ci-dessous définit d'abord une variable $ i à un ($ i = 1). Ensuite, la boucle while
s'exécute tant que $ i est inférieur à sept ($ i <7). $ i augmentera d'une unité chaque fois que la
boucle sera exécutée ($ i ++):

Cela produit le résultat suivant:

Mr TAOUAF .L Année universitaire 2017/20418 20


Technologie Web support de cours

La boucle do ... while

exécute toujours le bloc de code une fois, vérifie la condition et répète la boucle tant que la
condition spécifiée est vraie.

syntexe

Indépendamment du fait que la condition soit vraie ou fausse, le code sera exécuté au moins
une fois, ce qui pourrait être nécessaire dans certaines situations.

L'exemple ci-dessous écrira une sortie, puis incrémentera la variable $ i par un. Ensuite, la
condition est vérifiée et la boucle continue de s'exécuter, tant que $ i est inférieur ou égal à 7.

Notez que dans une boucle do while, la condition est testée APRES l'exécution des
instructions dans la boucle. Cela signifie que la boucle while while exécutera ses instructions
au moins une fois, même si la condition est fausse la première fois.

La boucle for

La boucle for est utilisée lorsque vous savez à l'avance combien de fois le script doit être
exécuté.

Paramètres:
init: Initialise la valeur du compteur de boucle
test: Evalue chaque fois que la boucle est itérée, continue si elle est évaluée à true et se
termine si elle est fausse

Mr TAOUAF .L Année universitaire 2017/20418 21


Technologie Web support de cours

increment: Augmente la valeur du compteur de boucle


Chacune des expressions de paramètre peut être vide ou contenir plusieurs expressions
séparées par des virgules.
Dans l'instruction for, les paramètres sont séparés par des points-virgules.

L'exemple ci-dessous affiche les nombres de 0 à 5:

Résultat

Remarque:

La boucle for de l'exemple ci-dessus définit d'abord la variable $ a à 0, puis vérifie la


condition ($ a <6). Si la condition est vraie, il exécute le code. Après cela, il incrémente $ a ($
a ++).

La boucle foreach

La boucle foreach fonctionne uniquement sur les tableaux et est utilisée pour faire une boucle
sur chaque paire clé / valeur d'un tableau.

Il y a deux syntaxes:

Mr TAOUAF .L Année universitaire 2017/20418 22


Technologie Web support de cours

La première forme boucle sur le tableau. À chaque itération, la valeur de l'élément en cours
est assignée à $ value, et le pointeur du tableau est déplacé de un, jusqu'à ce qu'il atteigne le
dernier élément du tableau.

Le second formulaire affectera en outre la clé de l'élément courant à la variable $ key à


chaque itération.

L'exemple suivant illustre une boucle qui génère les valeurs du tableau $ names.

L'instruction Statement

L'instruction switch est une alternative à l'instruction if-elseif-else.

Utilisez l'instruction switch pour sélectionner l'un des blocs de code à exécuter.

Syntaxe:

Mr TAOUAF .L Année universitaire 2017/20418 23


Technologie Web support de cours

Premièrement, notre expression unique, n (le plus souvent une variable), est évaluée une fois.
Ensuite, la valeur de l'expression est comparée à la valeur de chaque cas dans la structure. S'il
y a correspondance, le bloc de code associé à ce cas est exécuté.

L'utilisation d'instructions imbriquées if else aboutit à un comportement similaire, mais switch


offre une solution plus élégante et optimale.

Considérez l'exemple suivant, qui affiche le message approprié pour chaque jour.

Exemple:

Remarque: Le mot break qui suit chaque cas est utilisé pour empêcher le code de s'exécuter
automatiquement dans le cas suivant. Si vous oubliez la pause instruction, PHP continuera
automatiquement à travers les instructions case suivantes, même lorsque le cas ne correspond
pas.

Mr TAOUAF .L Année universitaire 2017/20418 24


Technologie Web support de cours

L'instruction défaut

L'instruction défaut est utilisée si aucune correspondance n'est trouvée.

L'instruction par défaut est facultative, elle peut donc être omise.

Si vous ne spécifiez pas l'instruction break, PHP continue à exécuter les instructions qui
suivent le cas jusqu'à ce qu'il trouve une interruption. Vous pouvez utiliser ce comportement
si vous devez obtenir la même sortie pour plusieurs cas.

L'exemple ci-dessus aura la même sortie si $ day est égal à 'Tue', 'Wed' ou 'Thu'.

Mr TAOUAF .L Année universitaire 2017/20418 25


Technologie Web support de cours

l'instruction break
Comme indiqué dans la leçon précédente, l'instruction break est utilisée pour sortir du
commutateur lorsqu'une requête est trouvée.

Si la pause est absente, le code continue à fonctionner. Par exemple:

Remarque: Break peut également être utilisé pour arrêter l'exécution de for, foreach, while,
do-while structures.L'instruction break arrête le courant pour, foreach, while, do-while ou
switch et continue à exécuter le programme sur la ligne qui arrive après la boucle.

Une déclaration de rupture dans la partie externe d'un programme (par exemple, pas dans une
boucle de contrôle) arrêtera le script.

l'instruction continue
Lorsqu'elle est utilisée dans une structure en boucle, l'instruction continue permet d'ignorer ce
qui reste de l'itération de la boucle en cours. Il continue ensuite l'exécution à l'évaluation de
l'état et passe au début de l'itération suivante.

L'exemple suivant ignore les nombres pairs dans la boucle for:

Conseil : Vous pouvez utiliser l'instruction continue avec toutes les structures en boucle.

Mr TAOUAF .L Année universitaire 2017/20418 26


Technologie Web support de cours

Include :
Les instructions include et require permettent d'insérer le contenu d'un fichier PHP dans un
autre fichier PHP, avant que le serveur ne l'exécute.

Y compris les fichiers permet d'économiser un peu de travail. Vous pouvez créer un en-tête,
un pied de page ou un fichier de menu standard pour toutes vos pages Web. Ensuite, lorsque
l'en-tête nécessite une mise à jour, vous pouvez uniquement mettre à jour le fichier d'inclusion
d'en-tête. Supposons que nous avons un fichier d'en-tête standard appelé header.php.

Utilisez l'instruction include pour inclure le fichier d'en-tête dans une page.

En utilisant cette approche, nous avons la possibilité d'inclure le même fichier header.php
dans plusieurs pages.

Mr TAOUAF .L Année universitaire 2017/20418 27


Technologie Web support de cours

Résultat:

Les fichiers sont inclus en fonction du chemin du fichier. Vous pouvez utiliser un chemin
absolu ou relatif pour spécifier quel fichier doit être inclus.

Les fonctions

Une fonction est un bloc d'instructions pouvant être utilisé de manière répétée dans un
programme.Une fonction ne s'exécute pas immédiatement lorsqu'une page est chargée. Il sera
exécuté par un appel à la fonction. Une déclaration de fonction définie par l'utilisateur
commence par le mot fonction:

Un nom de fonction peut commencer par une lettre ou un trait de soulignement, mais pas avec
un nombre ou un symbole spécial.

Les fonctions

Dans l'exemple ci-dessous, nous créons la fonction sayHello (). L'accolade d'ouverture ({)
indique que c'est le début du code de fonction, tandis que l'accolade de fermeture (}) indique
que c'est la fin.

Pour appeler la fonction, il suffit d'écrire son nom:

Mr TAOUAF .L Année universitaire 2017/20418 28


Technologie Web support de cours

Paramètres de fonction
Les informations peuvent être transmises aux fonctions via des arguments, qui sont comme
des variables.Les arguments sont spécifiés après le nom de la fonction et entre parenthèses.

Ici, notre fonction prend un nombre, le multiplie par deux et imprime le résultat:

Vous pouvez ajouter autant d'arguments que vous le souhaitez, à condition qu'ils soient
séparés par des virgules.

Lorsque vous définissez une fonction, les variables qui représentent les valeurs qui lui seront
transmises pour le traitement sont appelées paramètres. Toutefois, lorsque vous utilisez une
fonction, la valeur que vous lui passez est appelée un argument.

Arguments par défaut


Les arguments par défaut peuvent être définis pour les arguments de la fonction.
Dans l'exemple ci-dessous, nous appelons la fonction setCounter (). Il n'y a pas d'arguments,
donc il prendra les valeurs par défaut qui ont été définies.

Mr TAOUAF .L Année universitaire 2017/20418 29


Technologie Web support de cours

Lors de l'utilisation des arguments par défaut, les valeurs par défaut doivent être sur le côté
droit de tous les arguments autres que ceux par défaut; Sinon, les choses ne fonctionneront
pas comme prévu.

l'instruction Return

Une fonction peut renvoyer une valeur en utilisant l'instruction return. Le retour arrête
l'exécution de la fonction et renvoie la valeur au code appelant. Par exemple:

Si vous laissez la valeur renvoyée, une valeur NULL est renvoyée. Une fonction ne peut pas
renvoyer plusieurs valeurs, mais renvoyer un tableau produira des résultats similaires.

Variables prédéfinies

Un superglobal est une variable prédéfinie toujours accessible, quelle que soit sa portée. Vous
pouvez accéder aux superglobales PHP à travers n'importe quelle fonction, classe ou fichier.

Les variables superglobales de PHP sont $ _SERVER, $ GLOBALS, $ _REQUEST, $


_POST, $ _GET, $ _FILES, $ _ENV, $ _COOKIE, $ _SESSION.

$ _SERVER

$ _SERVER est un tableau qui inclut des informations telles que les en-têtes, les chemins et
les emplacements de script. Les entrées de ce tableau sont créées par le serveur Web.
$ _SERVER ['SCRIPT_NAME'] retourne le chemin du script courant:

Notre exemple a été écrit dans un fichier appelé somefile.php, situé à la racine du serveur
Web.

Mr TAOUAF .L Année universitaire 2017/20418 30


Technologie Web support de cours

$ _SERVER
$ _SERVER ['HTTP_HOST'] renvoie l'en-tête Host de la requête en cours.

Cette méthode peut être utile lorsque vous avez beaucoup d'images sur votre serveur et devez
transférer le site Web vers un autre hôte. Au lieu de changer le chemin pour chaque image,
vous pouvez faire ce qui suit:
Créez un fichier config.php qui contient le chemin d'accès à vos images:

Utilisez le fichier config.php dans vos scripts:

Le chemin vers vos images est maintenant dynamique. Il va changer automatiquement, en


fonction de l'en-tête de l'hôte.
Ce graphique montre les éléments principaux de $ _SERVER.

Mr TAOUAF .L Année universitaire 2017/20418 31


Technologie Web support de cours

Formes

Le but des superglobales PHP $ _GET et $ _POST est de collecter des données qui ont été
entrées dans un formulaire.
L'exemple ci-dessous montre un formulaire HTML simple qui comprend deux champs de
saisie et un bouton de soumission:

Result:

Mr TAOUAF .L Année universitaire 2017/20418 32


Technologie Web support de cours

L'attribut action spécifie que lorsque le formulaire est soumis, les données sont envoyées à un
fichier PHP nommé first.php.
Les éléments de formulaire HTML ont des noms, qui seront utilisés lors de l'accès aux
données avec PHP.
L'attribut de méthode sera discuté dans la leçon suivante. Pour l'instant, nous allons définir la
valeur "post".

Maintenant, quand nous avons un formulaire HTML avec l'attribut action défini dans notre
fichier PHP, nous pouvons accéder aux données du formulaire en utilisant le tableau associatif
$ _POST.

Dans le premier fichier .php:

Le tableau superglobal $ _POST contient des paires clé / valeur. Dans les paires, les clés sont
les noms des contrôles de formulaire et les valeurs sont les données d'entrée entrées par
l'utilisateur.
Nous avons utilisé le tableau $ _POST, car la méthode = "post" a été spécifiée dans le
formulaire.

Mr TAOUAF .L Année universitaire 2017/20418 33


Technologie Web support de cours

POST

Les deux méthodes pour soumettre des formulaires sont GET et POST. Les informations
envoyées à partir d'un formulaire via la méthode POST sont invisibles aux autres, car tous les
noms et / ou valeurs sont incorporés dans le corps de la requête HTTP. En outre, il n'y a
aucune limite sur la quantité d'informations à envoyer. En outre, POST prend en charge des
fonctionnalités avancées telles que la prise en charge d'une entrée binaire multi-parties lors du
téléchargement de fichiers sur le serveur.
Cependant, il n'est pas possible de mettre en signet la page, car les valeurs soumises ne sont
pas visibles. POST est la méthode préférée pour envoyer des données de formulaire.

GET
Les informations envoyées via un formulaire à l'aide de la méthode GET sont visibles par tous
(tous les noms et valeurs de variables sont affichés dans l'URL). GET définit également des
limites sur la quantité d'informations pouvant être envoyées - environ 2000 caractères.
Cependant, comme les variables sont affichées dans l'URL, il est possible de mettre en signet
la page, ce qui peut être utile dans certaines situations.
Par exemple:

Maintenant, le formulaire est soumis à actionGet.php, et vous pouvez voir les données
soumises dans l'URL:

Mr TAOUAF .L Année universitaire 2017/20418 34


Technologie Web support de cours

GET ne devrait jamais être utilisé pour envoyer des mots de passe ou d'autres informations
sensibles!

 Lorsque vous utilisez POST ou GET, la validation correcte des données de formulaire
via le filtrage et le traitement est d'une importance vitale pour protéger votre
formulaire contre les pirates !.

Les Sessions

En utilisant une session, vous pouvez stocker des informations dans des variables, à utiliser
sur plusieurs pages.
Les informations ne sont pas stockées sur l'ordinateur de l'utilisateur, comme c'est le cas avec
les cookies.
Par défaut, les variables de session durent jusqu'à ce que l'utilisateur ferme le navigateur.
Démarrer une session PHP
Une session est démarrée en utilisant la fonction session_start ().
Utilisez le global PHP $ _SESSION pour définir les variables de session.

Maintenant, les variables de couleur et de nom sont accessibles sur plusieurs pages, tout au
long de la session.

Mr TAOUAF .L Année universitaire 2017/20418 35


Technologie Web support de cours

La fonction session_start () doit être la toute première chose dans votre document. Avant les
balises HTML.
Variables de session

Une autre page peut être créée pour accéder aux variables de session définies dans la page
précédente:

Vos variables de session restent disponibles dans la superglobale $ _SESSION jusqu'à la


fermeture de votre session.
Toutes les variables de session globales peuvent être supprimées manuellement en utilisant
session_unset (). Vous pouvez également détruire la session avec session_destroy ().

Les cookies:
sont souvent utilisés pour identifier l'utilisateur. Un cookie est un petit fichier que le serveur
intègre sur l'ordinateur de l'utilisateur. Chaque fois qu'un même ordinateur demande une page
via un navigateur, il envoie également le cookie. Avec PHP, vous pouvez créer et récupérer
des valeurs de cookies.

Créez des cookies en utilisant la fonction setcookie ():


setcookie (nom, valeur, expire, chemin, domaine, sécurisé, httponly);

Mr TAOUAF .L Année universitaire 2017/20418 36


Technologie Web support de cours

name: spécifie le nom du cookie


value: Spécifie la valeur du cookie
expire: spécifie (en secondes) quand le cookie doit expirer. La valeur: time () + 86400 * 30,
définira le cookie à expiration dans 30 jours. Si ce paramètre est omis ou mis à 0, le cookie
expirera à la fin de la session (à la fermeture du navigateur). La valeur par défaut est 0.
chemin: Spécifie le chemin du serveur du cookie. S'il est défini sur "/", le cookie sera
disponible dans tout le domaine. S'il est réglé sur "/ php /", le cookie ne sera disponible que
dans le répertoire php et dans tous les sous-répertoires de php. La valeur par défaut est le
répertoire en cours dans lequel le cookie est défini.
domain: spécifie le nom de domaine du cookie. Pour rendre le cookie disponible sur tous les
sous-domaines de example.com, définissez le domaine sur "example.com".
secure: Indique si le cookie doit ou non être transmis via une connexion HTTPS sécurisée.
TRUE indique que le cookie ne sera défini que si une connexion sécurisée existe. La valeur
par défaut est FALSE.
httponly: S'il est défini sur TRUE, le cookie sera accessible uniquement via le protocole
HTTP (le cookie ne sera pas accessible aux langages de script). L'utilisation de httponly
permet de réduire le vol d'identité à l'aide d'attaques XSS. La valeur par défaut est FALSE.
Le paramètre name est le seul requis. Tous les autres paramètres sont facultatifs.

L'exemple suivant crée un cookie nommé "user" avec la valeur "John". Le cookie expirera
après 30 jours, ce qui est écrit comme 86 400 * 30, dans lequel 86 400 secondes = un jour. Le
'/' signifie que le cookie est disponible sur l'ensemble du site.

Nous récupérons ensuite la valeur du cookie "user" (en utilisant la variable globale $
_COOKIE). Nous utilisons également la fonction isset () pour savoir si le cookie est défini:

La fonction setcookie () doit apparaître AVANT la balise <html>.


La valeur du cookie est automatiquement encodée lors de l'envoi du cookie et est
automatiquement décodée lors de sa réception. Néanmoins, ne stockez JAMAIS
d'informations sensibles dans les cookies.

Les opérations sur les fichiers

PHP offre un certain nombre de fonctions à utiliser lors de la création, de la lecture, du


téléchargement et de l'édition de fichiers.

Mr TAOUAF .L Année universitaire 2017/20418 37


Technologie Web support de cours

La fonction fopen () crée ou ouvre un fichier. Si vous utilisez fopen () avec un fichier qui
n'existe pas, le fichier sera créé, étant donné que le fichier a été ouvert pour l'écriture (w) ou
l'ajout (a).

Utilisez l'un des modes suivants pour ouvrir le fichier.


r: Ouvre le fichier en lecture seule.
w: Ouvre le fichier pour écriture seulement. Efface le contenu du fichier ou crée un nouveau
fichier s'il n'existe pas.
a: Ouvre le fichier pour écriture seulement.
x: Crée un nouveau fichier pour écriture seulement.
r +: Ouvre le fichier en lecture / écriture.
w +: Ouvre le fichier en lecture / écriture. Efface le contenu du fichier ou crée un nouveau
fichier s'il n'existe pas.
a +: Ouvre le fichier en lecture / écriture. Crée un nouveau fichier si le fichier n'existe pas
x +: Crée un nouveau fichier en lecture / écriture.

L'exemple ci-dessous crée un nouveau fichier, "fichier.txt", qui sera créé dans le même
répertoire que le code PHP.

Écrire dans un fichier

Lorsque vous écrivez dans un fichier, utilisez la fonction fwrite ().


Le premier paramètre de fwrite () est le fichier à écrire; le deuxième paramètre est la chaîne à
écrire.

L'exemple ci-dessous écrit un couple de noms dans un nouveau fichier appelé "names.txt".

Mr TAOUAF .L Année universitaire 2017/20418 38


Technologie Web support de cours

Notez que nous avons écrit deux fois dans le fichier "names.txt", puis nous avons utilisé la
fonction fclose () pour fermer le fichier.
Le symbole \ n est utilisé lors de l'écriture de nouvelles lignes.

l'instruction fclose ()

La fonction fclose () ferme un fichier ouvert et renvoie TRUE en cas de succès ou FALSE en
cas d'échec.
C'est une bonne pratique de fermer tous les fichiers après avoir fini de travailler avec eux

Ajouter un fichier

Si vous souhaitez ajouter du contenu à un fichier, vous devez ouvrir le fichier en mode Ajout.

Par exemple:

Lors de l'ajout à un fichier en utilisant le mode «a», le pointeur de fichier est placé à la fin du
fichier, s'assurant que toutes les nouvelles données sont ajoutées à la fin du fichier.

Créons un exemple de formulaire qui ajoute des données remplies à un fichier.

Mr TAOUAF .L Année universitaire 2017/20418 39


Technologie Web support de cours

Maintenant, chaque fois qu'un nom est entré et soumis, il est ajouté au fichier "names.txt",
avec une nouvelle ligne.

La fonction isset () détermine si le formulaire a été soumis, ainsi que si le texte contient une
valeur.
Nous n'avons pas spécifié d'attribut d'action pour le formulaire, donc il se soumettra à lui-
même.

Lire un fichier

La fonction file () lit le fichier entier dans un tableau. Chaque élément du tableau correspond à
une ligne du fichier:

Cela imprime toutes les lignes du fichier et les sépare par des virgules. Nous avons utilisé la
boucle foreach, car la variable $ read est un tableau.

À la fin de la sortie dans l'exemple précédent, nous aurions une virgule, comme nous
l'imprimons après chaque élément du tableau. Le code suivant nous permet d'éviter
d'imprimer cette virgule finale.

Mr TAOUAF .L Année universitaire 2017/20418 40


Technologie Web support de cours

La variable $ count utilise la fonction count pour obtenir le nombre d'éléments dans le tableau
$ read.

Ensuite, dans la boucle foreach, après chaque impression de ligne, nous déterminons si la
ligne courante est inférieure au nombre total de lignes, et imprimons une virgule si c'est le cas.

Cela évite d'imprimer cette virgule finale, comme pour la dernière ligne, $ i est égal à $ count.

Mr TAOUAF .L Année universitaire 2017/20418 41

Vous aimerez peut-être aussi