1
Résume PHP : Pointer@Info
Table des matières
1. Le manuelle PHP : ........................................................................................................................... 2
2. La balise php : ................................................................................................................................. 2
3. L’affichage des messages :.............................................................................................................. 2
4. Les commentaires en php............................................................................................................... 2
5. Les types des variables : ................................................................................................................. 2
6. Manipuler les types des variables :................................................................................................ 2
a. Vérifier le type d’une variable :.................................................................................................. 2
b. Transtypage (conversion de type) et manipulation: ................................................................. 3
7. Afficher une variable : .................................................................................................................... 3
8. Les opérateurs................................................................................................................................. 3
9. Les conditions : ............................................................................................................................... 4
10. Les tableaux : .............................................................................................................................. 4
11. Les boucles:................................................................................................................................. 5
12. Transmission des données: ........................................................................................................ 6
a. Les fonctions de vérification dans la transmission des données : .............................................. 6
b. La protection avec htmlspecialchars:.......................................................................................... 6
13. Le champ input hidden :............................................................................................................. 6
14. Inclusion des pages:.................................................................................................................... 7
15. Les sessions : $_SESSION......................................................................................................... 7
16. Les cookies : $_COOKIE ............................................................................................................ 7
17. Les variables de serveur : $_SERVER.......................................................................................... 8
18. Envoyer les fichiers: $_FILES....................................................................................................... 8
19. Manipulation des Fichiers : ........................................................................................................ 9
20. Les fonctions en php:................................................................................................................ 10
21. Les fonctions de Math: ............................................................................................................. 10
22. Les fonctions de CDC :............................................................................................................... 11
23. Les fonctions de Date : ............................................................................................................. 13
25. Les exceptions :......................................................................................................................... 14
26. Connexion avec une base de donnée :..................................................................................... 14
2
1. Le manuelle PHP :
 www.php.net/manual/fr/index.php
 Les serveur web php les plus connue : nginx , apache ,cloudflare server
 Des extensions dans vscode pour aide : PHP Intelephense, PHP Extension Pack,
Open PHP/HTML/JS In Browser
2. La balise php :
<?php echo "le code php ce met ici"; ?>
3. L’affichage des messages :
<?php echo "Ceci est du texte"; ?>
<!-- Ou bien, avec des parenthèses -->
<?php echo("Ceci est du texte"); ?>
<!-- print joue le meme role que echo
<?php print "Cette ligne a été écrite "uniquement" en PHP."; ?>
4. Les commentaires en php
 Mono ligne : // La ligne suivante indique mon âge ou bien # helloi
 Multi ligne : /* un message multi lignes */
5. Les types des variables :
 Pour spécifier que la variable est global : global $var;
 Pour spécifier que la variable est statique : static $var;
Les chaînes de caractères string $fullname = "Mathieu Nebra";
$variable = "Mon "nom" Math";
$variable = 'Mon "nom" Mathieu';
Les nombres entiers int $userAge = 17;
Les nombres décimaux float $price = 57.3;
Les booléens bool $isAuthor = true;
Rien NULL $noValue = NULL;
constante define("Nom_de_la_constante",Valeur);
exemple : define(‘pi’,14.5)
6. Manipuler les types des variables :
a. Vérifier le type d’une variable :
Afin de connaitre le type des variables en utilise les fonctions suivantes qui retourne true
ou false :
 is_array(),
 is_double(),
 is_float(),
3
 is_real(),
 is_long(),
 is_int(),
 is_integer()
 is_string(),
 is_object(),
 is_null(),
 is_scalar(): Est-ce que la variable est une CDC, Enter ou double
 is_numeric() : Est-ce que c’est un nombre ou une chaine numérique
b. Transtypage (conversion de type) et manipulation:
Int intval(variable), Echo intval(4.2); 4
Float floatval(variable), Echo floatval(’15.5kg’) 15.5
String strval(variable). Echo strval(15.5) ‘’15.5’’
double doubleval(variable). Echo doubleval(’15.5kg’) 15.5
$var1= (int)"2.34"; Echo $var1 2
$var2= (float)"2.34"; Echo $var2 2.34
Retourne le type de variable Echo gettype(15.5) double
Affiche les information d’une
variable
var_dump(15.5); float(15.5)
Affecte un type à une variable et
retourne true en cas de succès et
false sinon.
settype(2.23, "type")
settype(2.23, "int")
Retourne true si la variable
passée en paramètre existe false
sinon,
isset()
Supprime la variable passée en
paramètre,
unset()
Retourne un booléen en vérifiant
si la variable est non vide et non
nulle.
empty()
7. Afficher une variable :
$fullname = "Mathieu Nebra";
echo "Bonjour ";
echo $fullname;
echo "Bonjour {$fullname} !!";
echo "Bonjour" .$fullname. "!!!!";
8. Les opérateurs
Mathématiques : +, -, *, /,%,**
4
Comparaison : ===, <,>,<=,>= , !==
Logiques :&& , ||
9. Les conditions :
Condition simple : if : if ($x) {…}
Condition : if…. Else : if ($x === true) {…} else {…}
Condition imbriqué : if……….elseif………else:
if ($x === "Oui") {…} elseif ($x === "Non") {…} else {…}
Structure ternaries: $isAdult = ($userAge >= 18) ? true : false;
Switch:
<?php
$grade = 10;
switch ($grade) {
case 0: echo "resultat 1 !"; break;
default: echo "Désolé"; }
?>
Autre expression:
<?php $x = true; ?>
<?php if ($x): ?>
<h1>Liste des recettes à base de poulet</h1>
<?php endif; ?>
10. Les tableaux :
Pour afficher facilement un tableau en utilise la fonction print_r. C'est
une sorte de echo spécialisé dans les tableaux.
print_r($user1);
 array_key_exists :pour vérifier si une clé existe dans le tableau,
Return true ou false.
<?php array_key_exists('cle', $array); ?>
 in_array :pour vérifier si une valeur existe dans le tableau.
<?php in_array('Mathieu Nebra', $users) ?> //true ou false
 array_search :pour récupérer la clé d'une valeur dans le tableau
<?php array_search('Mathieu Nebra', $users); ?> //renvoi la cle sinon
false
 ksort : pour le trie d’un tableau
 krsort() : effectue la même action mais en ordre inverse des codes
ASCII
 Explode($separator,$string) : Retourne un tableau de sous chaines
en découpant une chaîne de caractères en segments à l’aide d’un
séparateur explode(" ", "Bonjour tout le monde");
 Implode : Joindre les éléments d’un tableau avec une chaine
implode(" ", $arr));
 array_diff_key : Calcule la différence de deux tableaux en utilisant les clés
pour comparaison
 array_diff : Calcule la différence entre des tableaux.
 array_fill_keys : Remplit un tableau avec des valeurs, en spécifiant les clés
 array_key_first : Récupère la première clé d'un tableau
5
 array_chunk : Sépare un tableau en tableaux de taille inférieure
 array_merge : Fusionne plusieurs tableaux en un seul
 array_search : Recherche dans un tableau la première clé associée à la valeur
 $a + $b : Union
 $a == $b : Egalité
 $a === $b : Identique
 $a != $b : Inegalité
 $a <> $b : Inegalité
 $a !== $b : Non Identique
Example 1 :
$user1 = ['Mickaël Andrieu', 'email', 'S3cr3t', 34];
echo $user1[0]; // "Mickaël Andrieu"
Ou bien:
$recipes = array('Cassoulet', 'Couscous', 'Escalope Milanaise');
Ou bien:
$recipes[0] = 'Cassoulet';
$recipes[1] = 'Couscous';
$recipes[2] = 'Escalope Milanaise';
Ou bien:
$recipes[] = 'Cassoulet';
$recipes[] = 'Couscous';
$recipes[] = 'Escalope Milanaise';
Example 2 :
$x = ['Mickaël', 'mickael', 'S3', 34];
$y = ['Mathieu', 'mathieu', 'de', 33];
$users = [$x, $y];
echo $users[1][1];
Example 3 :
$users = [['name' => 'Mickaël','age' => 34],
['name' => 'Mathieu','age' => 34],
['name' => 'Laurène','age' => 28]];
echo $users[0]['name']
11. Les boucles:
While : while ($isValid) {…..}
For : for ($lines = 0; $lines <= 2; $lines++){ …. }
Foreach : foreach($recipes as $recipe) {...}
foreach($recipe as $property => $propertyValue) {...}
6
12. Transmission des données:
 URL: Uniform Resources Location, c’est une adresse web.
 page.php?param1=valeur1&param2=valeur2&param3=valeur3…
 Exemple d’un URL :
http://www.monsite.com/contact.php?nom=Dupont&prenom=Jean
 Le nom de la page web.
 Les paramètre nom et prénom
 Les valeurs des paramètres
Page 1 : index.php Page 2 : contact.php
<form action="contact.php" method="GET">
<input name="email">
<input name="message">
<button type="submit">send</button>
</form>
<?php
echo $_GET['email'];
echo $_GET['message'];
?>
contact.php?email=utilisateur%40exemple.com&message=Bonjour
 En peut utiliser post au lieu de get pour cacher les données.
 Pour faire la redirection : header("Location: {$url}");
a. Les fonctions de vérification dans la transmission des données :
<?php
if (!isset($_GET['email'])
|| !filter_var($_GET['email'], FILTER_VALIDATE_EMAIL)
|| empty($_GET['message'])
|| trim($_GET['message']) === ''
) {
echo('Il faut un email et un message valides pour soumettre le
formulaire.');
return;
}
b. La protection avec htmlspecialchars:
Pour ignorer le code HTML, Il faut penser à utiliser cette fonction sur tous les textes
envoyés par l'utilisateur qui sont susceptibles d'être affichés sur une page web.
<p><b>Message</b>:
<?php echo htmlspecialchars($_POST['message']); ?>
</p>
13. Le champ input hidden :
Un champ input hidden sert à stocker un résultat calculé du côté client
et transférer sa valeur au serveur au moment dusubmitdu formulaire.
<input type="hidden" name="compteur" value="<?php echo $compt; ?>">
7
14. Inclusion des pages:
Pour inclure une page dans une autre page en utilise la syntaxe suivant :
__DIR__ est une constante magique en PHP qui renvoie le chemin absolu du répertoire du
fichier courant. <?php require_once(__DIR__ . 'header.php'); ?>
ou bien : include
15. Les sessions : $_SESSION
 Création d’une variable session : $_SESSION['nom'] ;
 Démarre le système de sessions : session_start() ; le déclarer avant <html>
 Fermer la session du visiteur : session_destroy() ;
 Détruire tous les variables de sessions : session_unset();
 Le nom de l’identifiant de la session est précisé dans php.ini par session.name (il vaut
généralement PHPSESSID ce dont vous pouvez vous assurer en appelant <?php
phpinfo() ?> ) .
 L'instruction < ?php echo session_id(); ?> affiche l'identificateur de session.
16. Les cookies : $_COOKIE
setcookie(name, value, expire, path, domain, secure, httponly);
 Pour créer un cookie en utilise la syntaxe suivant avec trois paramètres :
o Le nom du cookie (exemple : LOGGED_USER ).
o La valeur du cookie (exemple : utilisateur@exemple.com ).
o La date d'expiration du cookie, sous forme de "timestamp"
(exemple : 1090521508 ).
o Si vous voulez supprimer le cookie dans un an, il vous faudra donc écrire :
time() + 365*24*3600
o path: Le chemin sur le serveur sur lequel le cookie sera disponible
o domain: Le (sous-)domaine pour lequel le cookie est disponible
((telque'www.example.com')
 Supprimer un cookies : setcookie("compteur","", time() -3600);
 Sécurisez un cookie avec les propriétés httpOnly et secure
 Exemple :
setcookie(
'LOGGED_USER',
'utilisateur@exemple.com',
[
'expires' => time() + 365*24*3600,
'secure' => true,
'httponly' => true,
]
);
 Utilisation d’une variable cookies : $_COOKIE['LOGGED_USER']
8
17. Les variables de serveur : $_SERVER
$_SERVER est un tableau contenant des informations comme les en-têtes, dossiers et
chemins du script. Les entrées de ce tableau sont créées par le serveur web.
Indice Indication Exemple
'SERVER_NAME' Le nom du serveur hôte qui
exécute le script suivant.
Echo
$_SERVER['SERVER_NAME']
//localhost
'SERVER_ADDR' L'adresse IP du serveur sous
lequel le script courant est en
train d'être exécuté.
Echo
$_SERVER['SERVER_ADDR'] //::1
'REQUEST_METHOD ' Méthode de requête utilisée pour
accéder à la page ; par exemple
'GET', 'HEAD', 'POST', 'PUT'.
Echo
$_SERVER['REQUEST_METHOD']
//GET
'HTTP_HOST ' Contenu de l'en-tête Host: de la
requête courante, si elle existe.
Echo
$_SERVER['HTTP_HOST']
//localhost:8080
'SERVER_PORT ' Le port de la machine serveur
utilisé pour les communications.
Par défaut, c'est"80". En utilisant
SSL, par exemple, il sera
remplacé par le numéro de port
HTTP sécurisé.
Echo
$_SERVER['SERVER_PORT']
//8080
$_SERVER['PHP_SELF'] Le nom du fichier du script en
cours d'exécution, par rapport à
la racine web. Par exemple,
$_SERVER['PHP_SELF'] dans le
script situé à l'adresse
http://example.com/foo/bar.php
Sera : /foo/bar.php.
dans le cas pratique c’est préférable
de l’utiliser pour envoyer le
formulaire au même lien
18. Envoyer les fichiers: $_FILES
Quand en cherche à envoyer un fichier en utilise la syntaxe suivant dans form:
<form action="contact.php" method="POST" enctype="multipart/form-data">
<input type="file">
</form>
Variable Signification
$_FILES['screenshot']['name'] Contient le nom du fichier envoyé par le
visiteur.
$_FILES['screenshot']['type'] Indique le type du fichier envoyé. Si c'est
une image gif par exemple, le type
sera image/gif
$_FILES['screenshot']['size'] Indique la taille du fichier envoyé.
9
$_FILES['screenshot']['tmp_name'] Cette variable contient l'emplacement
temporaire du fichier (c'est PHP qui gère
ça).
$_FILES['screenshot']['error'] Contient un code d'erreur permettant de
savoir si l'envoi s'est bien effectué ou s'il y
a eu un problème et si oui, lequel. La
variable vaut 0 s'il n'y a pas eu d'erreur.
$fileInfo =
pathinfo($_FILES['screenshot']
['name']);
$extension =
$fileInfo['extension'];
Vérifier l’extension d’un fichier
$path = __DIR__ . '/uploads/';
if (!is_dir($path)) {echo " le
dossier uploads est manquant";
return;
}
Testons, si le dossier uploads est
manquant
move_uploaded_file(
$_FILES['screenshot']['tmp_name'],
$path.basename(
$_FILES['screenshot']['name']));
}
On peut valider le fichier et le stocker
définitivement
Basename : qui renverra juste «
fichier.png ».
19. Manipulation des Fichiers :
Ouverture d’un fichier :
$ressource=fopen("filename", "mode");
$idFile= fopen("test.txt", "w"); // r| r+ | w |w+ |a | a+
Ecriture :
fwrite($idFile, "nNouvelleligne");
Lecture :
Echo fread($idFile, filesize("test.txt"));
fclose($idFile);
Ou bien la lecture ligne par ligne
while(!feof($idFile)){
echo fgets($idFile);
}
Chargement de fichier :
 Voir aussi les directives file_uploads, upload_max_filesize, upload_tmp_dir,
post_max_size et max_input_time dans php.ini
10
 Le fichier téléchargé sera stocké temporairement dans le dossier temporaire du
système, à moins qu'un autre dossier soit fourni avec la directive upload_tmp_dirdu
php.ini.
Les fonctions du fichier :
20. Les fonctions en php:
Lien pour les références des fonctions en php classé par catégorie :
www.php.net/manual/fr/funcref.php
Créer votre function :
function nomFun(string $x, array $y): string
{ return "......."; }
21. Les fonctions de Math:
abs($val) Retourne la valeur absolute de $val
abs(-56)  56
acos($val), con($val)….
exp($val), log($val)
floor($val) Retourne l’entier inférieur du nombre $val
floor(12.4)  12
round(val, précision) Nombre des chiffres après la virgule
round(3.4)  3
round(3.6)  4
round(5.043, 2)  5.04
Ceil(val) Retourne l’entier supérieur du nombre num
Fread() Lecture de fichier en mode binaire
Fgets() récupère la ligne courante à partir de l’emplacement du pointeur sur fichier
Fclose() Fermer le fichier
File() Lit le fichier et renvoie le résultat dans un tableau
Fgetc() Lit un caractère dans un fichier
Fwrite() Ecrit un fichier en mode binaire
File_get_contents Lit tous un fichier dans une chaine
readfile Afficher un fichier
fputs Alias de fwrite
fstat Lit les informations sur un fichier a partir d’un poiteur de fichier
File_put_contents Ecrit des données dans un fichier
11
ceil(14,05)  15
Max(val1, val2) |
Min(val1, val2)
max(15, 16)  16
min(10, 18)  10
pow(val,puiss)|
sqrt(val)
pow(3, 3)  27
sqrt(25)  5
rand() |
rand(min,max)
Entier aléatoire entre max et min
rand()  2134667633
rand(1, 10) 3
intdiv Division entier
intdiv(15, 4)  3
is_finite Indique si un nombre est fini
is_finite(0) true
is_infinite Indique si un nombre est infini
is_infinite(log(0)) true
is_nan Indique si une valeur n’est pas un nombre
is_nan("14")  false
22. Les fonctions de CDC :
$str="Bonjour";
echo"$strà tous";
echo'$strà tous';
// Affiche: Bonjour à tous
// Affiche: $strà tous
Insère un retour à la ligne HTML à chaque
nouvelle ligne
nl2br
Echo nl2br("Cecinestnunenchaîne");
Ceci
Est
Une
chaîne
Affiche une chaîne de caractères formatée
printf
printf("resultat= %.2f <br>", 1/ 3);
0.33
Calcule la taille d'une chaîne
strlen
echo(strlen("Bonjour"));
7
trim: Supprime les espaces (ou d'autres
caractères) en début et fin de chaîne
ltrim: Supprime à gauche
rtrim: Supprime à droite
trim / ltrim/ rtrim
echo(strlen(" Bonjour "));
19
echo(strlen(trim(" Bonjour ")));
7
Compte le nombre de mots utilisés dans une
chaîne
str_word_count
echo(str_word_count("Hello world"));
2
Inverse une chaîne
strrev
echo(strrev("Hello world"));
dlrowolleH
Renvoie la chaîne en majuscule / en
minuscule
strtoupper/ strtolower
echo(strtoupper("Hello world"));
HELLO WORLD
Met le premier caractère en majuscule / en
minuscule
echo(ucfirst("hello ").lcfirst("WORLD"));
Hello wORLD
12
ucfirst/ lcfirst
Met en majuscule la première lettre de tous
les mots
ucwords
echo(ucwords("il fait beau ce matin!"));
Il Fait Beau Ce Matin!
Cherche la position de la première
occurrence dans une chaîne
strpos
echo(strpos("Bonjour tout le monde",
"tout"));
8
Recherche la position de la première
occurrence dans une chaîne, sans tenir
compte de la casse
stripos
echo(stripos("Bonjour tout le monde",
"TOUT"));
8
substr($string, $indiceDebut, ?$taille)
Retourne un segment de chaîne à partir de
l’indice de début donné jusqu'à la fin de la
chaine.
$taille: (optionnel) le nombre de
caractères à découper
echo(substr("Bonjour tout le monde", 8,
4));
tout
str_replace($chaine_recherchée,
$remplacement, $chaine)
Remplace toutes les occurrences de
$chaine_recherchée dans une chaîne
$chaine par $remplacement
echo(str_replace("tout le monde",
"Sara", "Bonjour tout le monde"));
Bonjour Sara
str_ireplace
Version insensible à la casse de
str_replace()
echo(str_ireplace("ER", "ez", "vous
vous amuser et manger"));
vous vous amusez et mangez
preg_match($pattern, $subject)
Effectue une recherche de correspondance
avec une expression rationnelle standard
$cin= "cd1234";
Echo preg_match("/^[a-z]+d+$/", $cin);
true
preg_match_all
($pattern,$subject,&$matches)
Effectue une recherche de correspondance
avec une expression rationnelle et remplit
le tableau matches par les valeurs trouvées
$texte= "Bonjour, aujourd'hui c'est le 01/03/2022, j'ai
25 ans ";
$resultat= [];
preg_match_all("/d{2}/", $texte, $resultat);
print_r($resultat);
Array
( [0] => Array
(
[0] => 01
[1] => 03
[2] => 20
[3] => 22
[4] => 25
13
)
)
preg_replace
Recherche une expression régulière et la
remplace par une chaine de caractères.
$texte= "Bonjour, aujourd'hui c'est le 01/03/2022, j'ai
25 ans ";
echopreg_replace("/d/", "*", $texte);
Bonjour, aujourd'hui c'est le **/**/****, j'ai **
ans
ctype_digit
Vérifie qu'une chaîne est un entier
str_repeat
Répète une chaîne
echo(str_repeat("*", 10));
**********
str_pad
Complète une chaîne jusqu'à une taille
donnée
echo(str_pad("Bonjour", 12, "*"));
Bonjour*****
echostr_pad("100", 6, "0");
100000
Htmlspecialchars
Convertit les caractères spéciaux en entités
HTML
echo(htmlspecialchars("Bonjour
<b>Sara</b><br>Bonne journée"));
Bonjour <b>Sara</b><br>Bonne journée
23. Les fonctions de Date :
echo 'day : '.date('d').'<br>';
echo 'month : '.date('m').'<br>';
echo 'year : '.date('Y').'<br>';
echo 'hour : '.date('H').'<br>'; //24 heure: format de l’heure(00 to 23)
echo date("h"); => 01; // 12 heure: format de l’heureendeux chiffres (01 à 12)
echo 'minute : '.date('i').'<br>';
echo 'date : '.date('d/m/Y').'<br>';
echo 'time : '.date('H h i').'<br>';
echo date("l"); => Monday ;
echo date("s"); => 25 // Secondes en deux chiffres (00 to 59)
echo date("a"); => pm // L‘indication(am oupm) en miniscule
Formate une valeur timestamp en une
date et une heure plus lisibles
date(format,$timestamp)
Echo date("d.m.YH:i:s");
14.03.2022 14:01:49
Retourne la Valeur timestamp de la
date en paramètre
mktime(hour, minute, second, month,
day, year)
$d= mktime(11,14,54,8,12, 2022);
Echo "La date créée : ". date("d-m-
Y h:i:sa", $d);
La date créée : 12-08-2022 11:14:54am
Strtotime
Créer une date à partir d'une chaîne
$d= strtotime("15 April 2022
18:30:00");
14
Echo "Date créée: ". date("Y-m-d
h:i:sa", $d);
Date créée: 2022-04-15 06:30:00pm
Echo date("d/m/Y",
strtotime("tomorrow"));
15/03/2022
$date1= strtotime("Saturday");
Echo date("d/m/Y",
strtotime("+6 months", $date1));
19/09/2022
24. La redirection vers une autre page :
 redirect("matin.php"); ou bien
 function redirect($chaine)
{
header("Location:$chaine");
exit();
}
25. Les exceptions :
try{
// le code si c’est correct
}catch(Error $e){
Echo "Erreur : ". $e->getMessage();
}
Ou bien
 throw new Exception('Division par zéro.');
 stry{…….}catch(Exception $e){…..}finally{…………..}
26. Connexion avec une base de donnée :
Pour se connecter avec une base de donnée il faut activer le PDO (PHP Data Object )
dans votre xampp.
 Pour se connecter à un DB en créé un objet PDO et en spécifie le hote, user, psw et
database :
$mysqlClient = new PDO(
'mysql:host=localhost;dbname=partage_de_recettes;charset=utf8',
'root',
''
15
);
 Pour gérer l’erreur de connexion avec la DB c mieux d’utiliser ce code :
<?php
Try
{
$mysqlClient = new
PDO('mysql:host=localhost;dbname=partage_de_recettes;charset=utf8',
'root', '');
}
catch (Exception $e){
die('Erreur : ' . $e->getMessage());
}
?
 Pour créer les requêtes (CRUD) en utilise PDOStatement.
La préparation d’une requête SELECT sans paramètres:
$recipesStatement = $mysqlClient->prepare('SELECT * FROM recipes');
$recipesStatement->execute();
$recipes = $recipesStatement->fetchAll();
La préparation d’une requête SELECT avec les paramètres :
$sqlQuery = 'SELECT * FROM recipes WHERE author = :author AND is_enabled =
:is_enabled';
$recipesStatement = $mysqlClient->prepare($sqlQuery);
$recipesStatement->execute([
'author' => 'mathieu.nebra@exemple.com',
'is_enabled' => true,
]);
$recipes = $recipesStatement->fetchAll();
INSERT, DELETE, UPDATE:
// Ecriture de la requête
$sqlQuery = 'INSERT INTO recipes(title, recipe, author, is_enabled) VALUES
(:title, :recipe, :author, :is_enabled)';
// Préparation
$insertRecipe = $mysqlClient->prepare($sqlQuery);
// Exécution ! La recette est maintenant en base de données
$insertRecipe->execute([
'title' => 'Cassoulet',
'recipe' => 'Etape 1 : Des flageolets ! Etape 2 : Euh ...',
'author' => 'contributeur@exemple.com',
16
'is_enabled' => 1, // 1 = true, 0 = false
]);

Résumé Complet : Les Fondamentaux du PHP et Intégration avec MySQL.pdf

  • 1.
    1 Résume PHP :Pointer@Info Table des matières 1. Le manuelle PHP : ........................................................................................................................... 2 2. La balise php : ................................................................................................................................. 2 3. L’affichage des messages :.............................................................................................................. 2 4. Les commentaires en php............................................................................................................... 2 5. Les types des variables : ................................................................................................................. 2 6. Manipuler les types des variables :................................................................................................ 2 a. Vérifier le type d’une variable :.................................................................................................. 2 b. Transtypage (conversion de type) et manipulation: ................................................................. 3 7. Afficher une variable : .................................................................................................................... 3 8. Les opérateurs................................................................................................................................. 3 9. Les conditions : ............................................................................................................................... 4 10. Les tableaux : .............................................................................................................................. 4 11. Les boucles:................................................................................................................................. 5 12. Transmission des données: ........................................................................................................ 6 a. Les fonctions de vérification dans la transmission des données : .............................................. 6 b. La protection avec htmlspecialchars:.......................................................................................... 6 13. Le champ input hidden :............................................................................................................. 6 14. Inclusion des pages:.................................................................................................................... 7 15. Les sessions : $_SESSION......................................................................................................... 7 16. Les cookies : $_COOKIE ............................................................................................................ 7 17. Les variables de serveur : $_SERVER.......................................................................................... 8 18. Envoyer les fichiers: $_FILES....................................................................................................... 8 19. Manipulation des Fichiers : ........................................................................................................ 9 20. Les fonctions en php:................................................................................................................ 10 21. Les fonctions de Math: ............................................................................................................. 10 22. Les fonctions de CDC :............................................................................................................... 11 23. Les fonctions de Date : ............................................................................................................. 13 25. Les exceptions :......................................................................................................................... 14 26. Connexion avec une base de donnée :..................................................................................... 14
  • 2.
    2 1. Le manuellePHP :  www.php.net/manual/fr/index.php  Les serveur web php les plus connue : nginx , apache ,cloudflare server  Des extensions dans vscode pour aide : PHP Intelephense, PHP Extension Pack, Open PHP/HTML/JS In Browser 2. La balise php : <?php echo "le code php ce met ici"; ?> 3. L’affichage des messages : <?php echo "Ceci est du texte"; ?> <!-- Ou bien, avec des parenthèses --> <?php echo("Ceci est du texte"); ?> <!-- print joue le meme role que echo <?php print "Cette ligne a été écrite "uniquement" en PHP."; ?> 4. Les commentaires en php  Mono ligne : // La ligne suivante indique mon âge ou bien # helloi  Multi ligne : /* un message multi lignes */ 5. Les types des variables :  Pour spécifier que la variable est global : global $var;  Pour spécifier que la variable est statique : static $var; Les chaînes de caractères string $fullname = "Mathieu Nebra"; $variable = "Mon "nom" Math"; $variable = 'Mon "nom" Mathieu'; Les nombres entiers int $userAge = 17; Les nombres décimaux float $price = 57.3; Les booléens bool $isAuthor = true; Rien NULL $noValue = NULL; constante define("Nom_de_la_constante",Valeur); exemple : define(‘pi’,14.5) 6. Manipuler les types des variables : a. Vérifier le type d’une variable : Afin de connaitre le type des variables en utilise les fonctions suivantes qui retourne true ou false :  is_array(),  is_double(),  is_float(),
  • 3.
    3  is_real(),  is_long(), is_int(),  is_integer()  is_string(),  is_object(),  is_null(),  is_scalar(): Est-ce que la variable est une CDC, Enter ou double  is_numeric() : Est-ce que c’est un nombre ou une chaine numérique b. Transtypage (conversion de type) et manipulation: Int intval(variable), Echo intval(4.2); 4 Float floatval(variable), Echo floatval(’15.5kg’) 15.5 String strval(variable). Echo strval(15.5) ‘’15.5’’ double doubleval(variable). Echo doubleval(’15.5kg’) 15.5 $var1= (int)"2.34"; Echo $var1 2 $var2= (float)"2.34"; Echo $var2 2.34 Retourne le type de variable Echo gettype(15.5) double Affiche les information d’une variable var_dump(15.5); float(15.5) Affecte un type à une variable et retourne true en cas de succès et false sinon. settype(2.23, "type") settype(2.23, "int") Retourne true si la variable passée en paramètre existe false sinon, isset() Supprime la variable passée en paramètre, unset() Retourne un booléen en vérifiant si la variable est non vide et non nulle. empty() 7. Afficher une variable : $fullname = "Mathieu Nebra"; echo "Bonjour "; echo $fullname; echo "Bonjour {$fullname} !!"; echo "Bonjour" .$fullname. "!!!!"; 8. Les opérateurs Mathématiques : +, -, *, /,%,**
  • 4.
    4 Comparaison : ===,<,>,<=,>= , !== Logiques :&& , || 9. Les conditions : Condition simple : if : if ($x) {…} Condition : if…. Else : if ($x === true) {…} else {…} Condition imbriqué : if……….elseif………else: if ($x === "Oui") {…} elseif ($x === "Non") {…} else {…} Structure ternaries: $isAdult = ($userAge >= 18) ? true : false; Switch: <?php $grade = 10; switch ($grade) { case 0: echo "resultat 1 !"; break; default: echo "Désolé"; } ?> Autre expression: <?php $x = true; ?> <?php if ($x): ?> <h1>Liste des recettes à base de poulet</h1> <?php endif; ?> 10. Les tableaux : Pour afficher facilement un tableau en utilise la fonction print_r. C'est une sorte de echo spécialisé dans les tableaux. print_r($user1);  array_key_exists :pour vérifier si une clé existe dans le tableau, Return true ou false. <?php array_key_exists('cle', $array); ?>  in_array :pour vérifier si une valeur existe dans le tableau. <?php in_array('Mathieu Nebra', $users) ?> //true ou false  array_search :pour récupérer la clé d'une valeur dans le tableau <?php array_search('Mathieu Nebra', $users); ?> //renvoi la cle sinon false  ksort : pour le trie d’un tableau  krsort() : effectue la même action mais en ordre inverse des codes ASCII  Explode($separator,$string) : Retourne un tableau de sous chaines en découpant une chaîne de caractères en segments à l’aide d’un séparateur explode(" ", "Bonjour tout le monde");  Implode : Joindre les éléments d’un tableau avec une chaine implode(" ", $arr));  array_diff_key : Calcule la différence de deux tableaux en utilisant les clés pour comparaison  array_diff : Calcule la différence entre des tableaux.  array_fill_keys : Remplit un tableau avec des valeurs, en spécifiant les clés  array_key_first : Récupère la première clé d'un tableau
  • 5.
    5  array_chunk :Sépare un tableau en tableaux de taille inférieure  array_merge : Fusionne plusieurs tableaux en un seul  array_search : Recherche dans un tableau la première clé associée à la valeur  $a + $b : Union  $a == $b : Egalité  $a === $b : Identique  $a != $b : Inegalité  $a <> $b : Inegalité  $a !== $b : Non Identique Example 1 : $user1 = ['Mickaël Andrieu', 'email', 'S3cr3t', 34]; echo $user1[0]; // "Mickaël Andrieu" Ou bien: $recipes = array('Cassoulet', 'Couscous', 'Escalope Milanaise'); Ou bien: $recipes[0] = 'Cassoulet'; $recipes[1] = 'Couscous'; $recipes[2] = 'Escalope Milanaise'; Ou bien: $recipes[] = 'Cassoulet'; $recipes[] = 'Couscous'; $recipes[] = 'Escalope Milanaise'; Example 2 : $x = ['Mickaël', 'mickael', 'S3', 34]; $y = ['Mathieu', 'mathieu', 'de', 33]; $users = [$x, $y]; echo $users[1][1]; Example 3 : $users = [['name' => 'Mickaël','age' => 34], ['name' => 'Mathieu','age' => 34], ['name' => 'Laurène','age' => 28]]; echo $users[0]['name'] 11. Les boucles: While : while ($isValid) {…..} For : for ($lines = 0; $lines <= 2; $lines++){ …. } Foreach : foreach($recipes as $recipe) {...} foreach($recipe as $property => $propertyValue) {...}
  • 6.
    6 12. Transmission desdonnées:  URL: Uniform Resources Location, c’est une adresse web.  page.php?param1=valeur1&param2=valeur2&param3=valeur3…  Exemple d’un URL : http://www.monsite.com/contact.php?nom=Dupont&prenom=Jean  Le nom de la page web.  Les paramètre nom et prénom  Les valeurs des paramètres Page 1 : index.php Page 2 : contact.php <form action="contact.php" method="GET"> <input name="email"> <input name="message"> <button type="submit">send</button> </form> <?php echo $_GET['email']; echo $_GET['message']; ?> contact.php?email=utilisateur%40exemple.com&message=Bonjour  En peut utiliser post au lieu de get pour cacher les données.  Pour faire la redirection : header("Location: {$url}"); a. Les fonctions de vérification dans la transmission des données : <?php if (!isset($_GET['email']) || !filter_var($_GET['email'], FILTER_VALIDATE_EMAIL) || empty($_GET['message']) || trim($_GET['message']) === '' ) { echo('Il faut un email et un message valides pour soumettre le formulaire.'); return; } b. La protection avec htmlspecialchars: Pour ignorer le code HTML, Il faut penser à utiliser cette fonction sur tous les textes envoyés par l'utilisateur qui sont susceptibles d'être affichés sur une page web. <p><b>Message</b>: <?php echo htmlspecialchars($_POST['message']); ?> </p> 13. Le champ input hidden : Un champ input hidden sert à stocker un résultat calculé du côté client et transférer sa valeur au serveur au moment dusubmitdu formulaire. <input type="hidden" name="compteur" value="<?php echo $compt; ?>">
  • 7.
    7 14. Inclusion despages: Pour inclure une page dans une autre page en utilise la syntaxe suivant : __DIR__ est une constante magique en PHP qui renvoie le chemin absolu du répertoire du fichier courant. <?php require_once(__DIR__ . 'header.php'); ?> ou bien : include 15. Les sessions : $_SESSION  Création d’une variable session : $_SESSION['nom'] ;  Démarre le système de sessions : session_start() ; le déclarer avant <html>  Fermer la session du visiteur : session_destroy() ;  Détruire tous les variables de sessions : session_unset();  Le nom de l’identifiant de la session est précisé dans php.ini par session.name (il vaut généralement PHPSESSID ce dont vous pouvez vous assurer en appelant <?php phpinfo() ?> ) .  L'instruction < ?php echo session_id(); ?> affiche l'identificateur de session. 16. Les cookies : $_COOKIE setcookie(name, value, expire, path, domain, secure, httponly);  Pour créer un cookie en utilise la syntaxe suivant avec trois paramètres : o Le nom du cookie (exemple : LOGGED_USER ). o La valeur du cookie (exemple : utilisateur@exemple.com ). o La date d'expiration du cookie, sous forme de "timestamp" (exemple : 1090521508 ). o Si vous voulez supprimer le cookie dans un an, il vous faudra donc écrire : time() + 365*24*3600 o path: Le chemin sur le serveur sur lequel le cookie sera disponible o domain: Le (sous-)domaine pour lequel le cookie est disponible ((telque'www.example.com')  Supprimer un cookies : setcookie("compteur","", time() -3600);  Sécurisez un cookie avec les propriétés httpOnly et secure  Exemple : setcookie( 'LOGGED_USER', 'utilisateur@exemple.com', [ 'expires' => time() + 365*24*3600, 'secure' => true, 'httponly' => true, ] );  Utilisation d’une variable cookies : $_COOKIE['LOGGED_USER']
  • 8.
    8 17. Les variablesde serveur : $_SERVER $_SERVER est un tableau contenant des informations comme les en-têtes, dossiers et chemins du script. Les entrées de ce tableau sont créées par le serveur web. Indice Indication Exemple 'SERVER_NAME' Le nom du serveur hôte qui exécute le script suivant. Echo $_SERVER['SERVER_NAME'] //localhost 'SERVER_ADDR' L'adresse IP du serveur sous lequel le script courant est en train d'être exécuté. Echo $_SERVER['SERVER_ADDR'] //::1 'REQUEST_METHOD ' Méthode de requête utilisée pour accéder à la page ; par exemple 'GET', 'HEAD', 'POST', 'PUT'. Echo $_SERVER['REQUEST_METHOD'] //GET 'HTTP_HOST ' Contenu de l'en-tête Host: de la requête courante, si elle existe. Echo $_SERVER['HTTP_HOST'] //localhost:8080 'SERVER_PORT ' Le port de la machine serveur utilisé pour les communications. Par défaut, c'est"80". En utilisant SSL, par exemple, il sera remplacé par le numéro de port HTTP sécurisé. Echo $_SERVER['SERVER_PORT'] //8080 $_SERVER['PHP_SELF'] Le nom du fichier du script en cours d'exécution, par rapport à la racine web. Par exemple, $_SERVER['PHP_SELF'] dans le script situé à l'adresse http://example.com/foo/bar.php Sera : /foo/bar.php. dans le cas pratique c’est préférable de l’utiliser pour envoyer le formulaire au même lien 18. Envoyer les fichiers: $_FILES Quand en cherche à envoyer un fichier en utilise la syntaxe suivant dans form: <form action="contact.php" method="POST" enctype="multipart/form-data"> <input type="file"> </form> Variable Signification $_FILES['screenshot']['name'] Contient le nom du fichier envoyé par le visiteur. $_FILES['screenshot']['type'] Indique le type du fichier envoyé. Si c'est une image gif par exemple, le type sera image/gif $_FILES['screenshot']['size'] Indique la taille du fichier envoyé.
  • 9.
    9 $_FILES['screenshot']['tmp_name'] Cette variablecontient l'emplacement temporaire du fichier (c'est PHP qui gère ça). $_FILES['screenshot']['error'] Contient un code d'erreur permettant de savoir si l'envoi s'est bien effectué ou s'il y a eu un problème et si oui, lequel. La variable vaut 0 s'il n'y a pas eu d'erreur. $fileInfo = pathinfo($_FILES['screenshot'] ['name']); $extension = $fileInfo['extension']; Vérifier l’extension d’un fichier $path = __DIR__ . '/uploads/'; if (!is_dir($path)) {echo " le dossier uploads est manquant"; return; } Testons, si le dossier uploads est manquant move_uploaded_file( $_FILES['screenshot']['tmp_name'], $path.basename( $_FILES['screenshot']['name'])); } On peut valider le fichier et le stocker définitivement Basename : qui renverra juste « fichier.png ». 19. Manipulation des Fichiers : Ouverture d’un fichier : $ressource=fopen("filename", "mode"); $idFile= fopen("test.txt", "w"); // r| r+ | w |w+ |a | a+ Ecriture : fwrite($idFile, "nNouvelleligne"); Lecture : Echo fread($idFile, filesize("test.txt")); fclose($idFile); Ou bien la lecture ligne par ligne while(!feof($idFile)){ echo fgets($idFile); } Chargement de fichier :  Voir aussi les directives file_uploads, upload_max_filesize, upload_tmp_dir, post_max_size et max_input_time dans php.ini
  • 10.
    10  Le fichiertéléchargé sera stocké temporairement dans le dossier temporaire du système, à moins qu'un autre dossier soit fourni avec la directive upload_tmp_dirdu php.ini. Les fonctions du fichier : 20. Les fonctions en php: Lien pour les références des fonctions en php classé par catégorie : www.php.net/manual/fr/funcref.php Créer votre function : function nomFun(string $x, array $y): string { return "......."; } 21. Les fonctions de Math: abs($val) Retourne la valeur absolute de $val abs(-56)  56 acos($val), con($val)…. exp($val), log($val) floor($val) Retourne l’entier inférieur du nombre $val floor(12.4)  12 round(val, précision) Nombre des chiffres après la virgule round(3.4)  3 round(3.6)  4 round(5.043, 2)  5.04 Ceil(val) Retourne l’entier supérieur du nombre num Fread() Lecture de fichier en mode binaire Fgets() récupère la ligne courante à partir de l’emplacement du pointeur sur fichier Fclose() Fermer le fichier File() Lit le fichier et renvoie le résultat dans un tableau Fgetc() Lit un caractère dans un fichier Fwrite() Ecrit un fichier en mode binaire File_get_contents Lit tous un fichier dans une chaine readfile Afficher un fichier fputs Alias de fwrite fstat Lit les informations sur un fichier a partir d’un poiteur de fichier File_put_contents Ecrit des données dans un fichier
  • 11.
    11 ceil(14,05)  15 Max(val1,val2) | Min(val1, val2) max(15, 16)  16 min(10, 18)  10 pow(val,puiss)| sqrt(val) pow(3, 3)  27 sqrt(25)  5 rand() | rand(min,max) Entier aléatoire entre max et min rand()  2134667633 rand(1, 10) 3 intdiv Division entier intdiv(15, 4)  3 is_finite Indique si un nombre est fini is_finite(0) true is_infinite Indique si un nombre est infini is_infinite(log(0)) true is_nan Indique si une valeur n’est pas un nombre is_nan("14")  false 22. Les fonctions de CDC : $str="Bonjour"; echo"$strà tous"; echo'$strà tous'; // Affiche: Bonjour à tous // Affiche: $strà tous Insère un retour à la ligne HTML à chaque nouvelle ligne nl2br Echo nl2br("Cecinestnunenchaîne"); Ceci Est Une chaîne Affiche une chaîne de caractères formatée printf printf("resultat= %.2f <br>", 1/ 3); 0.33 Calcule la taille d'une chaîne strlen echo(strlen("Bonjour")); 7 trim: Supprime les espaces (ou d'autres caractères) en début et fin de chaîne ltrim: Supprime à gauche rtrim: Supprime à droite trim / ltrim/ rtrim echo(strlen(" Bonjour ")); 19 echo(strlen(trim(" Bonjour "))); 7 Compte le nombre de mots utilisés dans une chaîne str_word_count echo(str_word_count("Hello world")); 2 Inverse une chaîne strrev echo(strrev("Hello world")); dlrowolleH Renvoie la chaîne en majuscule / en minuscule strtoupper/ strtolower echo(strtoupper("Hello world")); HELLO WORLD Met le premier caractère en majuscule / en minuscule echo(ucfirst("hello ").lcfirst("WORLD")); Hello wORLD
  • 12.
    12 ucfirst/ lcfirst Met enmajuscule la première lettre de tous les mots ucwords echo(ucwords("il fait beau ce matin!")); Il Fait Beau Ce Matin! Cherche la position de la première occurrence dans une chaîne strpos echo(strpos("Bonjour tout le monde", "tout")); 8 Recherche la position de la première occurrence dans une chaîne, sans tenir compte de la casse stripos echo(stripos("Bonjour tout le monde", "TOUT")); 8 substr($string, $indiceDebut, ?$taille) Retourne un segment de chaîne à partir de l’indice de début donné jusqu'à la fin de la chaine. $taille: (optionnel) le nombre de caractères à découper echo(substr("Bonjour tout le monde", 8, 4)); tout str_replace($chaine_recherchée, $remplacement, $chaine) Remplace toutes les occurrences de $chaine_recherchée dans une chaîne $chaine par $remplacement echo(str_replace("tout le monde", "Sara", "Bonjour tout le monde")); Bonjour Sara str_ireplace Version insensible à la casse de str_replace() echo(str_ireplace("ER", "ez", "vous vous amuser et manger")); vous vous amusez et mangez preg_match($pattern, $subject) Effectue une recherche de correspondance avec une expression rationnelle standard $cin= "cd1234"; Echo preg_match("/^[a-z]+d+$/", $cin); true preg_match_all ($pattern,$subject,&$matches) Effectue une recherche de correspondance avec une expression rationnelle et remplit le tableau matches par les valeurs trouvées $texte= "Bonjour, aujourd'hui c'est le 01/03/2022, j'ai 25 ans "; $resultat= []; preg_match_all("/d{2}/", $texte, $resultat); print_r($resultat); Array ( [0] => Array ( [0] => 01 [1] => 03 [2] => 20 [3] => 22 [4] => 25
  • 13.
    13 ) ) preg_replace Recherche une expressionrégulière et la remplace par une chaine de caractères. $texte= "Bonjour, aujourd'hui c'est le 01/03/2022, j'ai 25 ans "; echopreg_replace("/d/", "*", $texte); Bonjour, aujourd'hui c'est le **/**/****, j'ai ** ans ctype_digit Vérifie qu'une chaîne est un entier str_repeat Répète une chaîne echo(str_repeat("*", 10)); ********** str_pad Complète une chaîne jusqu'à une taille donnée echo(str_pad("Bonjour", 12, "*")); Bonjour***** echostr_pad("100", 6, "0"); 100000 Htmlspecialchars Convertit les caractères spéciaux en entités HTML echo(htmlspecialchars("Bonjour <b>Sara</b><br>Bonne journée")); Bonjour <b>Sara</b><br>Bonne journée 23. Les fonctions de Date : echo 'day : '.date('d').'<br>'; echo 'month : '.date('m').'<br>'; echo 'year : '.date('Y').'<br>'; echo 'hour : '.date('H').'<br>'; //24 heure: format de l’heure(00 to 23) echo date("h"); => 01; // 12 heure: format de l’heureendeux chiffres (01 à 12) echo 'minute : '.date('i').'<br>'; echo 'date : '.date('d/m/Y').'<br>'; echo 'time : '.date('H h i').'<br>'; echo date("l"); => Monday ; echo date("s"); => 25 // Secondes en deux chiffres (00 to 59) echo date("a"); => pm // L‘indication(am oupm) en miniscule Formate une valeur timestamp en une date et une heure plus lisibles date(format,$timestamp) Echo date("d.m.YH:i:s"); 14.03.2022 14:01:49 Retourne la Valeur timestamp de la date en paramètre mktime(hour, minute, second, month, day, year) $d= mktime(11,14,54,8,12, 2022); Echo "La date créée : ". date("d-m- Y h:i:sa", $d); La date créée : 12-08-2022 11:14:54am Strtotime Créer une date à partir d'une chaîne $d= strtotime("15 April 2022 18:30:00");
  • 14.
    14 Echo "Date créée:". date("Y-m-d h:i:sa", $d); Date créée: 2022-04-15 06:30:00pm Echo date("d/m/Y", strtotime("tomorrow")); 15/03/2022 $date1= strtotime("Saturday"); Echo date("d/m/Y", strtotime("+6 months", $date1)); 19/09/2022 24. La redirection vers une autre page :  redirect("matin.php"); ou bien  function redirect($chaine) { header("Location:$chaine"); exit(); } 25. Les exceptions : try{ // le code si c’est correct }catch(Error $e){ Echo "Erreur : ". $e->getMessage(); } Ou bien  throw new Exception('Division par zéro.');  stry{…….}catch(Exception $e){…..}finally{…………..} 26. Connexion avec une base de donnée : Pour se connecter avec une base de donnée il faut activer le PDO (PHP Data Object ) dans votre xampp.  Pour se connecter à un DB en créé un objet PDO et en spécifie le hote, user, psw et database : $mysqlClient = new PDO( 'mysql:host=localhost;dbname=partage_de_recettes;charset=utf8', 'root', ''
  • 15.
    15 );  Pour gérerl’erreur de connexion avec la DB c mieux d’utiliser ce code : <?php Try { $mysqlClient = new PDO('mysql:host=localhost;dbname=partage_de_recettes;charset=utf8', 'root', ''); } catch (Exception $e){ die('Erreur : ' . $e->getMessage()); } ?  Pour créer les requêtes (CRUD) en utilise PDOStatement. La préparation d’une requête SELECT sans paramètres: $recipesStatement = $mysqlClient->prepare('SELECT * FROM recipes'); $recipesStatement->execute(); $recipes = $recipesStatement->fetchAll(); La préparation d’une requête SELECT avec les paramètres : $sqlQuery = 'SELECT * FROM recipes WHERE author = :author AND is_enabled = :is_enabled'; $recipesStatement = $mysqlClient->prepare($sqlQuery); $recipesStatement->execute([ 'author' => 'mathieu.nebra@exemple.com', 'is_enabled' => true, ]); $recipes = $recipesStatement->fetchAll(); INSERT, DELETE, UPDATE: // Ecriture de la requête $sqlQuery = 'INSERT INTO recipes(title, recipe, author, is_enabled) VALUES (:title, :recipe, :author, :is_enabled)'; // Préparation $insertRecipe = $mysqlClient->prepare($sqlQuery); // Exécution ! La recette est maintenant en base de données $insertRecipe->execute([ 'title' => 'Cassoulet', 'recipe' => 'Etape 1 : Des flageolets ! Etape 2 : Euh ...', 'author' => 'contributeur@exemple.com',
  • 16.
    16 'is_enabled' => 1,// 1 = true, 0 = false ]);