Typy výrazov
PHP/FI 2.0 využívalo ľavú stranu výrazu pre stanovenie, akého typu by výsledok mal byť. PHP 3.0 započítava obe strany pri určovaní typov výsledku, a tento spôsob môže v 2.0 skriptoch spôsobiť, že sa v 3.0 bude správať nepredvídateľne.
Posúďte na tomto príklade:
$a[0]=5;
$a[1]=7;
$key = key($a);
while ("" != $key) {
echo "$keyn";
next($a);
}
Toto sa dá jednoducho opraviť. Nahraďte príkaz while s:
while ((string)$key != "") {