PHP met à votre disposition plusieurs commandes ou fonctions pour afficher du texte à l'écran.
La commande echo est très utilisée en PHP. Elle permet d'afficher du texte à l'écran.
Ce texte peut être un mot, une phrase, le contenu d'une variable ou encore du code HTML qui sera interprété par le navigateur.
Ex :
echo 'Salut !';
echo $titre;
echo '<img src="logo.svg" alt="Mon entreprise" title="Mon entreprise" />';
Lorsqu'il s'agit d'afficher un tableau ou un objet, la fonction print_r() se charge de boucler dans les éléments ou dans les propriétés afin d'afficher tout le contenu à l'écran.
Par exemple, pour un tableau :
$configurations = array( 'usager' => 'toto', 'langue' => 'fr', 'position_menu' => 'gauche' );
print_r($configurations);
Array ( [usager] => toto [langue] => fr [position_menu] => gauche )
Et pour un objet :
$mysqli = new mysqli("localhost", "root", "mysql", "garage");
print_r($mysqli);
mysqli Object ( [affected_rows] => 0 [client_info] => mysqlnd 5.0.12-dev - 20150407 - $Id: b396954eeb2d1d9ed7902b8bae237b287f21ad9e $ [client_version] => 50012 [connect_errno] => 0 [connect_error] => [errno] => 0 [error] => [error_list] => Array ( ) [field_count] => 0 [host_info] => localhost via TCP/IP [info] => [insert_id] => 0 [server_info] => 5.7.17 [server_version] => 50717 [stat] => Uptime: 21676 Threads: 1 Questions: 7546 Slow queries: 0 Opens: 547 Flush tables: 1 Open tables: 286 Queries per second avg: 0.348 [sqlstate] => 00000 [protocol_version] => 10 [thread_id] => 369 [warning_count] => 0 )
On réservera ce type d'affichage à la phase de développement puisqu'il n'offre pas un visuel intéressant.
Nous verrons plus tard comment assurer qu'un tel affichage n'apparaisse jamais lorsque le site est en production.
La fonction var_dump() est clairement conçue pour le débogage. Elle affiche, en plus du contenu d'une variable, d'un tableau ou d'un objet, des informations sur le ou les types de données impliqués.
Les informations affichées ouvrent un trou de sécurité puisqu'elles donnent des indices sur la structure de la base de données. C'est pourquoi la fonction var_dump() ne doit jamais être utilisée en production.
Ex :
$configurations = array( 'usager' => 'toto', 'langue' => 'fr', 'position_menu' => 'gauche' );
var_dump($configurations);
array(3) { ["usager"]=> string(4) "toto" ["langue"]=> string(2) "fr" ["position_menu"]=> string(6) "gauche" }
▼Publicité