 |
|
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; ?>
|
|
 |
 |