Altre incompatibilitÃ
- Il modulo Apache per PHP 3.0 non supporta più le versioni Apache inferiori a 1.2. La versione 1.2 (o superiore) di Apache è necessaria.
- echo() non supporta più la stringa di formato. Si usi piuttosto la funzione printf().
- In PHP/FI 2.0, un effetto collaterale dell'implementazione faceva sì che $foo[0] avesse lo stesso effetto di $foo. Questo non è più vero in PHP 3.0.
- Non è più supportata la lettura degli array con $array[]. Questo significa che non si può attraversare un array con un ciclo che esegue $data = $array[]. Usare current() e next() per ottenere lo stesso comportamento. Inoltre, $array1[] = $array2 non aggiunge i valori di $array2 a $array1, invece aggiunge $array2 come ultima elemento di $array1. Vedere anche il supporto di array multidimensionali.
- "+" non è più usato come un operatore di concatenazione per le stringhe, ma converte i suoi argumenti in numeri e realizza l'addizione numerica. Usare invece ".".
Example#1 Migrazione da 2.0: concatenazione delle stringhe
echo "1" + "1";
In PHP 2.0 questo visualizza 11, in PHP 3.0 invece visualizza 2. Al suo posto si usi:
echo "1"."1";
$a = 1;
$b = 1;
echo $a + $b;
Questo visualizza 2 sia in PHP 2.0 che in PHP 3.0.
$a = 1;
$b = 1;
echo $a.$b;