0% ont trouvé ce document utile (0 vote)
50 vues65 pages

Cours Introduction PHP 2022

Ce document introduit le langage PHP en présentant son historique, ses fonctionnalités, sa syntaxe et son fonctionnement. PHP est un langage de script côté serveur principalement utilisé pour le développement web dynamique et la connexion à des bases de données.

Transféré par

Yosr Abdeladhime
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)
50 vues65 pages

Cours Introduction PHP 2022

Ce document introduit le langage PHP en présentant son historique, ses fonctionnalités, sa syntaxe et son fonctionnement. PHP est un langage de script côté serveur principalement utilisé pour le développement web dynamique et la connexion à des bases de données.

Transféré par

Yosr Abdeladhime
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/ 65

Développement Web

coté serveur
Introduction au langage PHP

2022

1
PHP: Langage de script pour le Web

▪ Qu’est-ce que PHP ?


◼ Langage de script. Utilisé coté serveur
◼ Acronyme récursif : PHP: Hypertext Preprocessor
◼ Créé en 1994-1995 par Rasmus Lerdorf
◼ Extension utilisée sur certains serveurs Web (77.3%)
◼ Langage multi plate-forme (UNIX / Windows…)
◼ Open Source
◼ Versions actuelles (source w3techs.com) :
▪ PHP4 (0,2% en sept 2022)
▪ PHP5 (23,4% en sept 2022)
▪ PHP7 (71,5% en sept 2022)
▪ PHP8 (4,8 % en sept 2022)
2
PHP: Langage de script pour le Web

% Utilisation des versions PHP en 2020 3


Utilité et utilisation de PHP

▪ Création de pages HTML « dynamiques »,


fabriquées à la volée, construite à la demande

▪ Interface entre un serveur Web et des bases de


données (accès à plus 20 SGBD)

▪ Création d’applications Web

4
Principales fonctionnalités de PHP

▪ Manipulation de chaînes et tableaux


▪ Calendrier / dates / heures
▪ Fonctions mathématiques
▪ Accès au système de fichiers (create, open,
read, write, delete)
▪ Manipulation d’images
▪ HTTP / FTP / IMAP
▪ Bases de données (Oracle, MySQL, …)
▪ XML, JSON
▪ …

5
Fonctionnement de PHP
Requête
Rendu
Exécution
Fermeture
Envoi du HTTP
Localisation
Connexion
graphique
du
de
sur
de
du du
code
lale
résultatla
codeclient
connexion
serveur
des (hello.php)
ressource
PHP
au PHP
données
client(port
dans80)
le fichier
= réponse HTTP Client
GET /hello.php HTTP/1.0
Navigateur
Réseau •HTML
•JavaScript
Protocole HTTP •CSS

Exécution d’un programme sur le serveur


<html>
Construction de la réponse
<head>
Serveur
<title>Hello</title> <?php
</head> echo <<<HTML hello.php
Serveur Web
<body>Hello world</body>.html <html>
</html> .php <head>
.jpg <title>Hello</title>
Module PHP </head>
<body>Hello world</body>
MySQL </html>
HTML;
6
Fonctionnement de PHP

Client  Serveur

1. Connexion TCP sur le serveur (port 80)


2. Requête HTTP du client (mon_fichier.php)
3. Localisation de la ressource
4. Exécution du code PHP
5. Envoi du résultat de l’exécution au client
= réponse HTTP
6. Fermeture de la connexion
7. Rendu graphique des données (HTML, image, …)

7
Installation de PHP

Pour installer PHP, on peut utiliser les outils :

8
Programme en PHP
Un script PHP est exécuté sur le serveur et le résultat HTML brut est renvoyé au
navigateur.
L'extension de fichier par défaut pour les fichiers PHP est .php
Un fichier PHP contient normalement des balises HTML et du code de script
PHP.
Un script PHP commence par <?php et se termine par ?>

<!DOCTYPE html>
<html>
<body>
<h1>My first PHP page</h1>
<?php
echo "Hello World!";
?>
</body>
</html>
9
Eléments de syntaxe PHP

▪ La syntaxe de PHP ressemble à celle de famille


"C" (C, C++, Java, …)

▪ Chaque instruction se termine par ;

▪ les noms de variables sont sensibles à la casse!

▪ Commentaires:
/* jusqu’au prochain */
// jusqu’à la fin de la ligne
# jusqu’à la fin de la ligne
10
Les variables et les types de données

▪ Tout identificateur commence par "$"


▪ Les affectations sont réalisées grâce à "="
◼ Numérique entier: 12 ou réel: 1.54

◼ Chaîne: "Hello" ou ’Bonjour’

◼ Booléen: true, false

◼ Tableau: $tab[2]=12

◼ Objet

◼ NULL

▪ Le type d’une variable est dynamique et est


déterminé par la valeur qui lui est affectée

11
Typage faible. Exemple

// Pas de déclaration de variable

$test = 1.5 ; // Réel

$test = 12 ; // Entier

$test = array() ; // Tableau

$test = "10" ; // Chaîne

echo $test ; // 10

12
Typage automatique. Exemple

$nombre1 = 1.5 ; // Réel


$nombre2 = 12 ; // Entier
$chaine1 = "10" ; // Chaîne
$chaine2 = ‘Hello’ ; // Chaîne

$total =
$nombre1 + $nombre2 + $chaine1 + $chaine2 ;
1.5 12 "10" 'Hello'

13.5 10

23.5 0

echo $total ; // 23.5 Réel 23.5

13
Les chaînes de caractères

Substitution de variables dans les chaînes


▪ Guillemets simples
◼ $a='chaîne' ; chaîne
◼ $b='voici une $a'; voici une $a
▪ Guillemets doubles
◼ $a="chaîne" ; chaîne
◼ $b="voici une $a"; voici une chaîne
▪ Syntaxe HereDoc
◼ $a="chaîne" ; chaîne
◼ $b=<<<MARQUE_DE_FIN
voici une $a voici une chaîne
sur deux lignes ;-) sur deux lignes ;-)
MARQUE_DE_FIN;
14
Concaténation de chaînes

▪ Permet d’assembler plusieurs chaînes


▪ Réalisé grâce à l’opérateur point : .
"Bonjour " . "Mohamed"
→ vaut "Bonjour Mohamed"

$nb = 6*2 ;
"Acheter " . $nb . " jeux"
→ vaut "Acheter 12 jeux"

15
La commande echo

▪ Permet d’envoyer du texte au navigateur du


client (« écrire » la page au format HTML
résultant de l’interprétation de PHP)
◼ echo "Bonjour" ;
◼ $nom="Mohamed" ; echo "Bonjour $nom" ;

▪ Plus généralement, permet d’envoyer des octets


au navigateur du client
◼ Ficher HTML, XML, CSS, JavaScript, …
◼ Données d'une image
◼ Contenu d'un ficher PDF, Flash, etc.
16
Hello world !
Interprétation du code PHP sur le serveur
et transmission du résultat au client
<?php Serveur Navigateur
$debut = <<<HTML
<html> <html>
<head> <head>
<title>hello</title> <title>hello</title>
</head> </head>
<body>\n <body>
HTML; Hello world!
$corps = "Hello world!\n"; </body>
$fin = <<<HTML </html>
</body>
</html>
HTML;
/* Envoi au client */
echo $debut.$corps.$fin ;

Impossible de voir le code PHP depuis le navigateur !!


17
Les opérateurs arithmétiques

$a + $b Somme

$a - $b Différence

$a * $b Multiplication
$a / $b Division

$a % $b Modulo (Reste de la division entière)

18
Les opérateurs d’incrémentation

Retourne la valeur de $a puis augmente la


$a++
valeur de $a de 1
Augmente la valeur de $a de 1 puis
++$a retourne la nouvelle valeur de $a
Retourne la valeur de $a puis diminue la
$a--
valeur de $a de 1
Diminue la valeur de $a de 1 puis retourne
--$a la nouvelle valeur de $a

19
Les opérateurs de comparaison

$a == $b Vrai si égalité entre les valeurs de $a et $b

$a != $b Vrai si différence entre les valeurs de $a et $b

$a < $b Vrai si $a inférieur à $b

$a > $b Vrai si $a supérieur à $b

$a <= $b Vrai si $a inférieur ou égal à $b

$a >= $b Vrai si $a supérieur ou égal à $b

$a === $b Vrai si $a et $b identiques (valeur et type)

$a !== $b Vrai si $a et $b différents (valeur ou type)

20
Les opérateurs logiques

[Expr1]and [Expr2] Vrai si [Expr1] et [Expr2] sont vraies

[Expr1] && [Expr2] idem

[Expr1] or [Expr2] Vrai si [Expr1] ou [Expr2] sont vraies

[Expr1] || [Expr2] idem


Vrai si [Expr1] ou [Expr2] sont vraies
[Expr1] xor [Expr2]
mais pas les deux
! [Expr1] Vrai si [Expr1] est non vraie

21
Les opérateurs sur bits

$a & $b ET binaire

$a | $b OU binaire

$a ^ $b XOR binaire

~ $a Inversion bit à bit

$a << $b $a décalé à gauche de $b rangs


$a >> $b $a décalé à droite de $b rangs

22
Précédence des opérateurs

Opérateurs
new
[
++ --
! ~ - (int) (float) (string) (array) (object) @
*/%
+-.
<< >>
< <= > >=
== != === !==
&

23
Précédence des opérateurs

Opérateurs
^
|
&&
||
? :
= += -= *= /= .= %= &= |= ^= <<= >>=
and
xor
or
En cas de doute,
utilisez les parenthèses ;-)
24
Structure de contrôle Si…Alors…Sinon…
if (condition)
{
/* Bloc d’instructions exécuté si la
condition est vraie */
}
[else
{
/* Bloc d’instructions exécuté si la
condition est fausse */
}]

25
Structure de contrôle Tant que… faire…
while (condition)
{
/* Bloc d’instructions répété tant que la
condition est vraie */
}

do {
/* Bloc d’instructions exécuté une fois
puis répété tant que la condition est
vraie */
} while (condition) ;

26
Structure de contrôle Tant que… faire…
for(avant; condition; fin_chaque_itération)
{ /* Bloc d’instructions répété tant que la
condition est vraie */
}

Équivalent à:

avant ;
while (condition)
{ /* Bloc d’instructions répété tant que la
condition est vraie */
fin_chaque_itération ;
}
27
Structure de contrôle switch…

switch (val)
{
case v1:
instructions exécutées si val==v1
case v2:
instructions exécutées si val==v2
ou si val==v1

default:
instructions dans tous les cas
}

28
L’instruction break
Permet de sortir d’une structure de contrôle
switch (val)
{
case v1:
instructions exécutées si val==v1
break ; /* On sort du switch si val==v1 */
case v2:
instructions exécutées si val==v2
ou si val==v1
break ; /* On sort du switch si val==v2 */

default:
instructions exécutées dans tous les cas
si val!=v1 et val!=v2
}

29
Les tableaux

▪ Création / initialisation:
$tab1=array(12, "fraise", 2.5) ;

$tab2[] = 12 ; Clé Valeur


$tab2[] = "fraise" ; 0 12
$tab2[] = 2.5 ; 1 "fraise"
2 2.5
$tab3[0] = 12 ;
$tab3[1] = "fraise" ;
$tab3[2] = 2.5 ;
30
Les tableaux « à trous »

▪ Les éléments du tableaux ne sont pas forcement


d’indices consécutifs :
Clé Valeur
$tab4[0] = 12 ; 0 12
$tab4[1] = "fraise" ; 1 "fraise"
$tab4[2] = 2.5 ; 2 2.5
$tab4[5] = "el5" ; 3
4
5 "el5"

▪ Comment parcourir de tels tableaux ?


31
Les tableaux « à trous » (suite)
Parcours classique : 4
for ($i=0; $i < sizeof($tab4); $i++)
{ echo "tab[$i]: "
. $tab4[$i] . "<BR>\n";
} Clé Valeur
0 12
1 "fraise"
2 2.5
3
4
? 5 "el5"
32
Structure de contrôle Pour chaque…

foreach ($tableau as $element)


{
/* Bloc d’instructions répété pour
chaque élément de $tableau */
/* Chaque élément de $tableau est
accessible grâce à $element */
}

33
Parcours de tableau : foreach

PHP … HTML
… Val:12<br>
$tab4[0] = 12 ; Val:fraise<br>
$tab4[1] = "fraise" ; Val:2.5<br>
Val:el5<br>
$tab4[2] = 2.5 ;

$tab4[5] = "el5" ;
foreach($tab4 as $v)
{ Navigateur
echo "Val: $v<br>\n";
}

34
Tableaux associatifs
▪ Tableaux dont l’accès aux éléments n’est plus
réalisé grâce à un index (0,1,…) mais grâce à
une clé de type entier ou chaîne.
▪ Exemples de clés:
$tab['un'] = 12 ;
$tab[205] = "bonjour" ;
$tab["la valeur"] = 3.0 ;
▪ Création
$tab = array(cle1 => val1,
cle2 => val2,
…);
35
Tableaux associatifs - Exemples

$tab5['un'] = 12 ;
$tab5['trois'] = "fraise" ;
Clé Valeur
$tab5["deux"] = 2.5 ;
"un" 12
$tab5[42] = "el5" ;
"trois" "fraise"
"deux" 2.5
42 "el5"
$tab6 = array('un' => 12,
'trois' => "fraise",
"deux" => 2.5,
42 => "el5") ;

36
Structure de contrôle Pour chaque…

foreach($tableau as $cle => $element)


{
/* Bloc d’instructions répété pour
chaque élément de $tableau */
/* Chaque élément de $tableau est
accessible grâce à $element */
/* La clé d’accès à chaque élément est
donnée par $cle */
}

37
Parcours de tableau
<?php
$html = <<<HTML
<html>
<head><title>foreach clé</title>
</head>
<body>
HTML;
$tab6 = array('un' => 12,
'deux' => "fraise",
"trois" => 2.5,
"quatre" => "el5") ;
foreach ($tab6 as $cle => $val)
{
$html .= "tab[$cle]: $val<br>\n" ;
}
echo $html . "</body>\n</html>" ;
?>

38
Exemple de génération de code HTML
<?php
$html = <<<HTML
<!DOCTYPE html">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<title>Boucle</title>
</head>
<body>
HTML;
for ($i=1; $i<20; $i++) {
$html .= "Le serveur compte... "
. $i . "<br>\n" ;
}
$html .= <<<HTML
</body>
</html>
HTML;
echo $html ;

39
Traitement des données de formulaires

▪ PHP permet de traiter les données saisies grâce


à un formulaire HTML si le champ ACTION du
formulaire désigne une page PHP du serveur.

▪ Après récupération par le serveur Web, les


données sont contenues dans l'une des
variables superglobales de type tableau
associatif $_GET ou $_POST (ou $_REQUEST).

▪ La valeur peut être trouvée grâce à une clé qui


porte le même nom que le champs du formulaire
de la page HTML de saisie.
40
Traitement des données de formulaires
Client
Réseau Navigateur
nomPers=robert•HTML
•JavaScript
•CSS

<html>
<head>
Serveur
<title>bonjour</title> nomPers
</head>
Serveur Web
<body> <?php
Bonjour robert ! $html = <<<HTML
</body> <html>
</html> <head><title>bonjour</title></head>
Module PHP <body>
HTML;
robert
$html .= "Bonjour ".$_GET['nomPers']." !\n" ;
echo $html . "</body>\n</html>" ;

41
Exemple – Formulaire HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>formulaire</title>
</head>
<body>
<form action="valide1.php" method="get">
Nom: <input type="text" name="nomPers">
<input type="submit" value="Envoyer">
</form>
</body>
</html>

42
Exemple – Traitement en PHP
<?php
$html = <<<HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Validation</title> $_GET['nomPers']
</head> est-il défini ?
<body>
HTML;
if (isset($_GET['nomPers'])) $_GET['nomPers']
{
if (!empty($_GET['nomPers'])) est-il vide ?
{
$html .= "Vous avez saisi '"
.$_GET['nomPers']."'\n" ;
}
else
$html .= "Aucune valeur saisie\n";
}
else
$html .= "Utilisation incorrecte\n" ;
echo $html . "</body>\n</html>" ;
43
Formulaires contenant des champs « SELECT »

44
Formulaires contenant des champs
« SELECT unique»
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Formulaire de saisie des fruits</title>
</head>
<body>
<form action="valide3.php" method="get">
Choisissez des fruits:&nbsp;
<select name="sel">
<option>Fraise
<option>Pomme
Envoyer <option>Poire
<option>Banane
<option>Cerise
</select>
<input type="submit" value="envoyer">
</form>
</body> valide3.php?sel=Pomme
</html>

45
Formulaires contenant des champs
« SELECT multiple»
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Formulaire de saisie des fruits</title>
</head>
<body>
<form action="valide3.php" method="get">
Choisissez des fruits:&nbsp;
<select name="sel" multiple>
<option>Fraise
<option>Pomme
<option>Poire
Envoyer <option>Banane
<option>Cerise
</select>
<input type="submit" value="envoyer">
</form>
</body> valide3.php?sel=Pomme&sel=Poire ???
</html>

46
Formulaires contenant des champs
« SELECT multiple»
<html>
<head>
<title>Formulaire de saisie des fruits</title>
</head>
<body>
<form action="valide3.php" method="get">
Choisissez des fruits:&nbsp;
<select name="sel[]" multiple>
<option>Fraise
<option>Pomme
Envoyer <option>Poire
<option>Banane
<option>Cerise
</select>
<input type="submit" value="envoyer">
</form> valide3.php?sel%5B%5D=Pomme&sel%5B%5D=Poire
</body>
</html> valide3.php?sel[]=Pomme&sel[]=Poire

47
Traitement des données des champs « SELECT »

<?php
$html = <<<HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Liste de fruits</title>
</head> $_GET[‘sel']
<body> est un tableau
HTML;
if (isset($_GET['sel']) && !empty($_GET['sel']))
{/* La variable $_GET['sel'] est définie
et elle n'est pas vide */
foreach($_GET['sel'] as $fruit)
$html .= "Vous avez choisi $fruit<br>\n" ;
}
else
$html .= "Vous n'avez pas choisi de fruit\n" ;
echo $html . "</body>\n</html>" ;

48
Résultat

49
Formulaires contenant des champs « CHECKBOX »

50
Formulaires contenant des champs « CHECKBOX »

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


<html>
<head>
<title>Formulaire de saisie des fruits</title>
</head>
<body>
<form name="formu" action="valide3.php" method="get">
Choisissez des fruits&nbsp;:<br>
<input type="checkbox" name="sel[]" value="Fraise">Fraise<br>
<input type="checkbox" name="sel[]" value="Pomme" >Pomme <br>
<input type="checkbox" name="sel[]" value="Poire" >Poire <br>
<input type="checkbox" name="sel[]" value="Banane">Banane<br>
<input type="checkbox" name="sel[]" value="Cerise">Cerise<br>
<input type="submit" value="Envoyer">
</form>
</body>
</html>

51
Résultat

52
Références

$a = 12 ;
$b = $a ; $a 84
12

$c = &$a ; $b "coucou"
12
$b = "coucou" ; $c "hello"
$c = 84 ;
echo "\$a : $a\n" ; $a : 84
echo "\$b : $b\n" ; $b : coucou
echo "\$c : $c\n" ; $c : 84
unset($c) ;
$c = "hello" ;
53
Fonctions utilisateur

▪ Description d’une fonctionnalité dépendant


éventuellement de paramètres et retournant
éventuellement un résultat
▪ Définition
function moyenne($a,$b)
{
return ($a+$b)/2. ;
}
▪ Utilisation
$resultat = moyenne(2,4) ;
echo $resultat ; // vaut 3
54
Fonctions utilisateur

▪ Valeur de retour
function moyenne($a,$b)
{ … }
Typage faible de PHP :
Aucune information
▪ Arguments
function moyenne( $a, $b)
{ … }

Typage faible de PHP :


Aucune information

55
Mode de passage des arguments (types natifs)
<?php
function permutation($x, $y) {
echo "permutation..." ;
$t = $x ;
$x = $y ;
Permutation impossible :
$y = $t ; Passage des arguments
} des fonctions par valeur
$a = 12 ;
$b = 210 ;
echo "\$a = $a" ; $a = 12
echo "\$b = $b" ; $b = 210
permutation($a, $b) ; permutation...
echo "\$a = $a" ; $a = 12
echo "\$b = $b" ; $b = 210
?>

56
Mode de passage des arguments (types natifs)
<?php
function permutation(&$x, &$y) {
echo "permutation..." ;
$t = $x ;
$x = $y ;
Permutation
$y = $t ;
réussie
}
$a = 12 ;
$b = 210 ;
echo "\$a = $a" ; $a = 12
echo "\$b = $b" ; $b = 210
permutation($a, $b) ; permutation...
echo "\$a = $a" ; $a = 210
echo "\$b = $b" ; $b = 12
?>

57
Arguments par défaut des fonctions
▪ Valeur par défaut d’un argument s’il n’a pas été
défini lors de l’appel de la fonction
function bonjour($nom="inconnu")
{ echo "Bonjour cher $nom" ; }

▪ Utilisation
bonjour() ;
Bonjour cher inconnu

bonjour("Mourad") ;
Bonjour cher Mourad
58
Définition de fonctions fréquemment utilisées

▪ Certaines fonctions sont utilisées dans plusieurs


scripts PHP
▪ Comment faire pour ne pas les définir dans
chacune des pages ?
▪ Utilisation de :
◼ include("fichier") ; //génère warning
◼ require("fichier") ; //génère error
◼ include_once("fichier") ;
◼ require_once("fichier") ;
▪ Permet d’inclure le contenu de fichier dans
le script courant

59
include et require
Fichier utilisation1.php

Fichier mafonction.php require("mafonction.php")
<? mafonction(true) ;
function mafonction($arg) …
{
if (isset($arg)) Fichier utilisation2.php
{
echo ("Vrai") ; …
} include("mafonction.php")
else …
{ $var=false ;
echo ("Faux") ; mafonction($var) ;
} …
}
?> Fichier utilisation3.php

require("mafonction.php")

60
Définition de constantes

<?php
define("ma_constante", "Bonjour à tous") ;

nom valeur

Définition d'une constante

echo ma_constante ;
?>

Utilisation de la constante

61
Gestion des erreurs
▪ Dans certains cas, il n’est ni possible ni utile de
poursuivre l’exécution du code PHP (variables
non définies, valeurs erronées, échec de
connexion, …)
▪ Arrêt brutal de l’exécution du code:
◼ die(message)
◼ exit(message)
Envoie message au navigateur et termine
l’exécution du script courant

62
Gestion des erreurs – (Mauvais) Exemple
<?php PHP <html> HTML
$html = <<<HTML <head>
<html> <title>die-exit</title>
<head> </head>
<title>die-exit</title> <body>
</head> problème val
<body>
HTML;
if (!isset($val)) { HTML non valide…
die($html."problème val") ;
/* Au delà de ce point, Navigateur
fin du script */
} problème val
$html .= <<<HTML
Choix: $val
</body>
</html>

63
Gestion de l'affichage des erreurs

▪ int error_reporting ( [int level] )


Constante
Ancien niveau d'erreur E_ERROR
E_WARNING
Sur un serveur en E_PARSE

Débogage
E_NOTICE
production, toute
E_CORE_ERROR
erreur affichée
E_CORE_WARNING
donne des indices sur E_COMPILE_ERROR
les scripts et rend le E_COMPILE_WARNING
site vulnérable E_USER_ERROR
E_USER_WARNING
php.ini E_USER_NOTICE
E_ALL
display_errors boolean
E_STRICT
64
Opérateur de contrôle d'erreur

$v = file("dummy.txt") Fichier absent


or die("Problème de lecture") ;
Warning: file(dummy.txt): failed to open
stream: No such file or directory in
dummy.php on line 68
Problème de lecture

$v = @file("dummy.txt")
or die("Problème de lecture") ;
Problème de lecture

65

Vous aimerez peut-être aussi