|
|
|
| есть класс
<?
class db
{
var $host = 'localhost';
var $user = 'root';
var $password = '1224';
var $database = 'hivmed';
var $connection = 0;
var $res = 0;
var $row = '';
var $uniquevar = '';
var $requests = 0;
var $ray = '';
function query($string)
{
if($this->res = mysql_query($string))
{
$this->requests++;
return $this->res;
}
else
$this->error_desc(mysql_error());
}
function fetch()
{
while($this->ray = mysql_fetch_array($this->res))
$rows[] = $this->ray;
if(is_array($rows))
return $rows;
}
?>
в index.php
<?
$db->query('SELECT `id`, `title_'.$lang.'`, `content_'.$lang.'`, `type`, `template`, `ico`
FROM `menu` WHERE `main` = 1 and `active` = 1 ORDER BY `pos` ASC');
$a = $db->fetch();
print_r($a); // массив
print_r($rows) // пусто
?>
|
почему из index.php я не могу получить содержимое $rows? | |
|
|
|
|
|
|
|
для: moonfox
(09.05.2010 в 22:33)
| | //// | |
|
|
|
|
|
|
|
для: moonfox
(09.05.2010 в 22:33)
| | Я могу ошибиться, но вот вы написали (взяли где-то) класс. Так ведь чтобы получить доступ к его методам и свойствам нужно создать объект класса. Из вашего кода это не видно.
P.S. В крайнем случае нужно объявить эти свойства и методы статическими, чтобы обращаться к ним без создания объекта. | |
|
|
|
|
|
|
|
|
для: root
(10.05.2010 в 19:08)
| | Да, выше пост был написан.. Для начала нужно создать объект класса..
А переменную из функции нельзя никак получить.. Область видимости, все переменные по завершению работы функции удаляются.. | |
|
|
|
|
|
|
|
для: Tonik992
(12.05.2010 в 00:51)
| | >Да, выше пост был написан.. Для начала нужно создать объект класса..
Уважаемый, если бы $db не был объектом - результатом был бы Fatal error,
а не массив:
$a = $db->fetch();
print_r($a); // массив
| Объект уже создан.
>А переменную из функции нельзя никак получить.. Область видимости, все переменные по завершению работы функции удаляются..
Это Вы мне рассказываете? | |
|
|
|