Manuale PHP
Indietro | Appendice D. Migrazione da PHP/FI 2 a PHP 3 | Avanti

# Altre incompatibilità

- Il modulo Apache per PHP 3.0 non supporta più le versioni Apache inferiori a 1.2. Apache 1.2 e superiore è necessario.

- echo() non supporta più una stringa formattata. Usa per questo la funzione printf().

- In PHP/FI 2.0, un implementazione collateranea causava $foo[0] di avere lo stesso effetto di $foo. Questo non è più cosi in PHP 3.0.

- Leggere gli array con $array[] non è piu supportato

  Cioè, non si puo aprire un array con un ciclo che fà $data = $array[]. Usa current() e next() per avere questo effetto.

  Inoltre, $array1[] = $array2 non aggiunge i valori di $array2 a $array1, ma invece aggiunge $array2 come làultima entrata di $array1. Vedi anche il supporto di array multidimensionali.

- "+" non è più usato come un operatore di concatenazione per le stringhe, invece converte i suoi argumenti in numeri e realizza l'aggiunta numerica. Usa "." al posto suo.

Esempio D-11. Migrazione da 2.0: concatenazione delle stringhe

`echo "1" + "1";`

In PHP 2.0 avrebbe emettesso 11, in PHP 3.0 invece emetterebbe 2. Perciò si usa:

`echo "1"."1";`

`$a = 1; $b = 1; echo $a + $b;`

Emette 2 in entrambi PHP 2.0 e 3.0.

`$a = 1; $b = 1; echo $a.$b;`

Questo emettera 11 in PHP 3.0.

Indietro | Partenza | Avanti
`TRUE`/`FALSE` valori ritornati dalle funzioni | Risali | Debugging PHP