<!DOCTYPE html>
<html>    
 <head> <!-- Entête HTML --> 
   <meta charset="utf-8" />
   <title>settype bool&eacute;en</title>
 </head>
 <body>
 <?php
 define("WEB_EOL","<br/>");
  echo "--- Conversion en bool&eacute;en de valeurs fausses ---".WEB_EOL;
 // cas d'un entier
 $i=0;
 echo '$i='.$i.WEB_EOL;
 var_dump($i);
 echo WEB_EOL;
 settype($i,"boolean"); // transtypage explicite
 if ($i) echo '$i=vrai'.WEB_EOL; else echo '$i=faux'.WEB_EOL;
 var_dump($i);
 echo WEB_EOL;
 // cas d'un r&eacute;el
 $x=0.0; 
 echo '$x='.$x.WEB_EOL;
 var_dump($x);
 echo WEB_EOL;
 settype($x,"boolean"); // transtypage explicite
 if ($x) echo '$x=vrai'.WEB_EOL; else echo '$x=faux'.WEB_EOL;
 var_dump($x);
 echo WEB_EOL;
 // cas d'une chaîne
 // contenant "0"
 $ch="0"; 
 echo '$ch='.$ch.WEB_EOL;
 var_dump($ch);
 echo WEB_EOL;
 settype($ch,"boolean"); // transtypage explicite
 if ($ch) echo '$ch=vrai'.WEB_EOL; else echo '$ch=faux'.WEB_EOL;
 var_dump($ch);
 echo WEB_EOL;
  // contenant vide
 $ch=""; 
 echo '$ch='.$ch.WEB_EOL;
 var_dump($ch);
 echo WEB_EOL;
 settype($ch,"boolean"); // transtypage explicite
 if ($ch) echo '$ch=vrai'.WEB_EOL; else echo '$ch=faux'.WEB_EOL;
 var_dump($ch);
 echo WEB_EOL;
 // cas d'un type non d&eacute;fini NULL
 $n=NULL;
 echo '$n='.$n.WEB_EOL;
 var_dump($n);
 echo WEB_EOL;
 settype($n,"boolean"); // transtypage explicite
 if ($n) echo '$n=vrai'.WEB_EOL; else echo '$n=faux'.WEB_EOL;
 var_dump($n);
 echo WEB_EOL;
 // cas d'un tableau vide
 $tableau = [];
 var_dump($tableau);
 echo WEB_EOL;
 settype($tableau,"boolean"); // transtypage explicite
 if ($tableau) echo '$tableau=vrai'.WEB_EOL; else echo '$tableau=faux'.WEB_EOL;
 var_dump($tableau);
 echo WEB_EOL;

 echo "--- Conversion en bool&eacute;en de valeurs vraies ---".WEB_EOL;
 // cas d'un entier
 $i=-18;
 echo '$i='.$i.WEB_EOL;
 var_dump($i);
 echo WEB_EOL;
 settype($i,"boolean"); // transtypage explicite
 if ($i) echo '$i=vrai'.WEB_EOL; else echo '$i=faux'.WEB_EOL;
 var_dump($i);
 echo WEB_EOL;
 // cas d'un r&eacute;el
 $x=-18.0; 
 echo '$x='.$x.WEB_EOL;
 var_dump($x);
 echo WEB_EOL;
 settype($x,"boolean"); // transtypage explicite
 if ($x) echo '$x=vrai'.WEB_EOL; else echo '$x=faux'.WEB_EOL;
 var_dump($x);
 echo WEB_EOL;
 // cas d'une chaîne
 // contenant "0"
 $ch="-18"; 
 echo '$ch='.$ch.WEB_EOL;
 var_dump($ch);
 echo WEB_EOL;
 settype($ch,"boolean"); // transtypage explicite
 if ($ch) echo '$ch=vrai'.WEB_EOL; else echo '$ch=faux'.WEB_EOL;
 var_dump($ch);
 echo WEB_EOL;
 // cas d'un tableau non vide
 $tableau = ["val1"];
 var_dump($tableau);
 echo WEB_EOL;
 settype($tableau,"boolean"); // transtypage explicite
 if ($tableau) echo '$tableau=vrai'.WEB_EOL; else echo '$tableau=faux'.WEB_EOL;
 var_dump($tableau);
 echo WEB_EOL;
 ?>
 </body>
</html>
