Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как ввести внешнюю переменную в класс PHP?

Andrey Sam Профи (908), закрыт 12 лет назад
Дополнен 12 лет назад
Например есть у меня некая $var и есть
class MyClass
{
//Внутри которого несколько функций
function name1()
{
}
function name2()
{
}
}
Вводить внутрь функций я умею используя global $var; Но для введя в name1() эту переменную я не могу ее использовать в name2() и та ее прийдется в свою очередь тоже декларировать. А вот как мне ее прописать в самом классе один раз и использовать во всех функциях внутри этого класса?
Дополнен 12 лет назад
Не совсем правильно тогда сформулировал вопрос. Опишу подробнее. Есть PDO который сам по себе класс, подключаю $db = new PDO(....); Далее у меня есть еще один класс, который обрабатывает данные class MyClass {}, в его методы (извиняюсь что обозвал их функциями) $db только через global подключается, иначе выдает Undefined variable. Мой вопрос был как раз про это, как мне включить $db внутрь класса MyClass {} без необходимости подключения в каждой функции через глобал? Функций у меня десятка два внутри этого класса и везде прописывать как то неправильно, что то должно быть такое что позволит $db использовать внутри MyClass {} без глобалов. Нашелся вариант сделать MyClass как extends PDO но что то мне кажется это тоже неправильно.
Лучший ответ
dr.Drew Просветленный (34136) 12 лет назад
class MyClass {
var $db
function __construct()
{
$this->db = new PDO(...);
}
function name1()
{
$this->db ...
}
}
Остальные ответы
Миша Песков Гуру (3336) 12 лет назад
Во первых внутри классов нет функций, а есть методы
Во вторых тебе это для чего, то что ты пишешь бред какой то :)

UPD:

Можете тебе нужны свойства?

class MyClass
{
private $var;

function name1()
{
// Обращаемся к свойству как $this->var;
}
function name2()
{
// Обращаемся к свойству как $this->var;
}
}
Александр Мастер (1686) 12 лет назад
static $count;
обращение из методов self::$count;
Похожие вопросы