La valeur TRUE/FALSE comme retour de fonctions

La plupart des fonctions internes de PHP ont été réécrite pour qu'elle retourne TRUE en cas de succès, et FALSE en cas d'erreur, au contraire des fonctions qui retournaient 0 et -1 en PHP/FI 2.0. Le nouveau comportement est beaucoup plus logique, comme par exemple $fp = fopen("/your/file") or fail("fichier non trouvé!");. Etant donné que PHP/FI 2.0 n'a pas de règle claire à propos de ce que les fonctions doivent retourner en cas d'échec, la plupart des scripts devront probablement être vérifié manuellement, après avoir utilisé le convertisseur 2.0 à 3.0.

Exemple C-9. Migration depuis 2.0: valeur retournées, ancienne façon

<?php
  $fp
= fopen($file, "r");
  if (
$fp == -1);
    echo(
"Impossible d'ouvrir le fichier $file en lecture <br>\n");
  endif;
?>

Exemple C-10. Migration depuis 2.0: valeur retournées, nouvelle façon

<?php
  $fp
= @fopen($file, "r") or
     print(
"Impossible d'ouvrir le fichier $file en lecture<br>\n");
?>