<?php
  echo "--- Conversion en booléen de valeurs fausses ---".PHP_EOL;
 // cas d'un entier
 $i=0;
 echo '$i='.$i.PHP_EOL;
 var_dump($i);
 settype($i,"boolean"); // transtypage explicite
 if ($i) echo '$i=vrai'.PHP_EOL; else echo '$i=faux'.PHP_EOL;
 var_dump($i);
 // cas d'un réel
 $x=0.0; 
 echo '$x='.$x.PHP_EOL;
 var_dump($x);
 settype($x,"boolean"); // transtypage explicite
 if ($x) echo '$x=vrai'.PHP_EOL; else echo '$x=faux'.PHP_EOL;
 var_dump($x);
 // cas d'une chaîne
 // contenant "0"
 $ch="0"; 
 echo '$ch='.$ch.PHP_EOL;
 var_dump($ch);
 settype($ch,"boolean"); // transtypage explicite
 if ($ch) echo '$ch=vrai'.PHP_EOL; else echo '$ch=faux'.PHP_EOL;
 var_dump($ch);
  // contenant vide
 $ch=""; 
 echo '$ch='.$ch.PHP_EOL;
 var_dump($ch);
 settype($ch,"boolean"); // transtypage explicite
 if ($ch) echo '$ch=vrai'.PHP_EOL; else echo '$ch=faux'.PHP_EOL;
 var_dump($ch);
 // cas d'un type non défini NULL
 $n=NULL;
 echo '$n='.$n.PHP_EOL;
 var_dump($n);
 settype($n,"boolean"); // transtypage explicite
 if ($n) echo '$n=vrai'.PHP_EOL; else echo '$n=faux'.PHP_EOL;
 var_dump($n);
 // cas d'un tableau vide
 $tableau = [];
 var_dump($tableau);
 settype($tableau,"boolean"); // transtypage explicite
 if ($tableau) echo '$tableau=vrai'.PHP_EOL; else echo '$tableau=faux'.PHP_EOL;
 var_dump($tableau);

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