SommaireTelecharger la documentationChapitre suivantChapitre precedent  

  .: News :.: Edito :.: Scripts :.: Forum :.: Erreurs :.: Jobs :. 
 
Sommaire

Migration de PHP/FI 2.0 à PHP 3.0

A propos des incompatibilités en 3.0
Balises PHP
Syntaxe if..endif
Syntaxe while
Types d'expression
Les messages d'erreur ont changé
Evaluation rapide des booléens
La valeur TRUE/FALSE comme retour de fonctions
Diverses incompatibilités

8.4.9 Diverses incompatibilités

  • Le module PHP 3.0 pour Apache n'accepte plus les versions d'Apache antérieure à la version 1.2. Apache 1.2 ou plus récent est nécessaire.

  • echo n'utilise plus de chaîne de formatage. Il faut utiliser printf à la place.

  • En PHP/FI 2.0, un effet secondaire de l'implémentation faisait que $foo[0] était la même chose que $foo. Ce n'est plus vrai en PHP 3.0.

  • Lire un tableau avec $array[] n'est plus valable.

    Ainsi, il n'est plus possible de passer en revue un tableau avec des boucles telles que $data = $array[]. Utilisez current et next à la place.

    Ainsi, $array1[] = $array2 n'ajoute pas les valeurs de $array2 à $array1, mais crée un nouvel élément dans $array1 et y affecte $array2 comme dernier élément. Voir aussi les tableaux multidimensionnels.

  • "+" n'est plus utilisable comme opérateur de concaténation de chaîne. A la place, il convertit les arguments en nombres et effectue une addition numérique. Utilisez "." à la place.

Migration depuis 2.0: concaténation de chaînes

<?php
  
echo "1" "1";
?>

En PHP 2.0 cela retournerait 11, en PHP 3.0 cela va retourner 2. A la place, faites :


<?php
  
echo "1"."1";
?>

<?php
  $a 
1;
  
$b 1;
  echo 
$a $b;
?>


Chapitre précédentChapitre suivantAccueil nexen.net