
Извиняйте, что не могу выложить исходный код, т.к. там немало файлов в разных местах. Это мой движок. Суть в том, что у меня есть класс для работы с MySQL. Получаю данные след. образом:
Код
$res = $db->getall("select query");
- возвращает ассоциативный массив с данными для запросов на выборку.
Никогда раннее не было такой ошибки, а тут случаем вышло следующее... Данные возвращаются в массив нормально, можно вывести через print_r. Но при обходе через цикл foreach() выдает ошибку! Также is_array($res) возвращает false.
Еще интересней следующее... После запроса, сразу пишу следующее:
Код
echo sizeof($res);
echo sizeof($res);
echo sizeof($res);
Если эти 2 строки пишу в модели, то все ок, выдает, например 55. Т.е. 5 два раза.
НО! Если эти же 2 строки вывожу в шаблоне, то выводит так: 50

Т.е. после вывода размера в первом случае - 5, тут же еще раз вызываю - уже 0!! Если после этого выполнить print_r - опять выводит массив, мол все "ровно", работает.....
Собственно вопрос: у меня реальная ошибка где-то в моем классе??? КАК ТАКОЕ МОЖЕТ БЫТЬ???
Пробывал заменить название переменной, вместо $res - другое... Все работает

Просто не было времени разбираться, надо быстро доделать проект, не стал возиться. Но очень интересно, как такое может быть? Что первый раз sizeof() возвращает один рез-т, тут же вызываем еще раз - другой!
Пожалуйста, просвятите..

Спустя 3 часа, 18 минут, 53 секунды (21.02.2008 - 23:48) emp написал(а):
Цитата
Уверяю, НИГДЕ БОЛЕЕ ЭТА ПЕРЕМЕННАЯ НЕ ИСПОЛЬЗУЕТСЯ ($res)!
Значит все же используется, других вариантов я не вижу. Вы все-таки покажите код.
Спустя 8 часов, 16 минут, 24 секунды (22.02.2008 - 08:05) Sylex написал(а):
Цитата(emp @ 22.2.2008, 2:48) [snapback]34152[/snapback]
Цитата
Уверяю, НИГДЕ БОЛЕЕ ЭТА ПЕРЕМЕННАЯ НЕ ИСПОЛЬЗУЕТСЯ ($res)!
Значит все же используется, других вариантов я не вижу. Вы все-таки покажите код.
Тож так думаю... попробую выложить код...
_____________
Я думал я буду сеять добро, но у меня не получилось. Во-первых, мне помешали, во-вторых я сам отрекся от этой идеи.