Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема с РНР

13K
26 марта 2007 года
Tim_PL
25 / / 02.10.2006
Такая ситуация есть класс:
class Sql {
private $arrResult_rows;
....
public function query($sql) {
//здесь идет выборка из БД
...
$this->arrResult_rows = $res;
}

public function getRows() {
echo var_dump($this->arrResult_rows); // возвращает не пустой массив
return ($this->arrResult_rows);
}
}

class some {
...
function somefunc() {
...
$obj = new Sql();
$obj->query("SQLзапрос");
$arr = $obj->getRows();
echo var_dump($arr); //Возвращает NULL
}
}

Запрос выполняется корректно, передается не пустой массив и всё же, в классе some при вызове функции возвращается NULL. В чем тут может быть дело? :(

Заранее благодарен.
8
26 марта 2007 года
mfender
3.5K / / 15.06.2005
По написанному - всё верно. Всё должно быть...

Смущает вот эта строка в методе Sql::query(): $this->arrResult_rows = $res;
Что написано выше? И что покажет var_dump($this->arrResult_rows); (в этом же методе)? У меня есть смутное предчуствие...

PS. Нельзя-ли уточнить, что скрывается под словами "// возвращает не пустой массив" в методе Sql::getRows() ? (впрочем, вопрос о том же, что и выше)
13K
26 марта 2007 года
Tim_PL
25 / / 02.10.2006
В методе query всё в порядке.
var_dump($this->arrResult_rows); возвращает нужное значение, тоже самое и в Sql::getRows(), var_dump перед return выводит нужное значение, т.е. метод Sql::getRows() возвращает правильное значение, только вот при вызове этого метода почему-то функция возвращает пустой массив. Пробовал так

public function getRows() {
...
return 123;
}
все работает.

странно, а
return ($this->arrResult_rows);

не работает, хотя var_dump($this->arrResult_rows); возвращает нужное значение:

public function getRows() {
...
var_dump($this->arrResult_rows);
return ($this->arrResult_rows);
}

что не так?
8
26 марта 2007 года
mfender
3.5K / / 15.06.2005
Я же не просто так спросил, что именно показывает var_dump($this->arrResult_rows); ... "Нужное значение" - ни о чём не говорит... Массив это, или ресурс. А может, ссылка на ресурс...
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог