| ||||||||||
Типы выраженийPHP/FI 2.0 использовал левую часть выражения для определения того, какого типа должно быть выражение.
В PHP/FI 2.0 этот код выведет оба индекса $a. В PHP 3.0 вообще ничего не будет выведено. Причина в том, что в PHP 2.0 тип левого аргумента был string/строка, было сделано сравнение строк, "" не равно "0", и цикл выполнялся. В PHP 3.0, когда string сравнивается с integer, выполняется целочисленное сравнение (string конвертируется в integer). Это даёт сравнение atoi(""), равного 0, и variablelist, которое также равно 0, и поскольку 0==0, цикл не выполняется ни разу. Исправить это просто. Замените оператор while на:
| ||||||||||
|