Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Встроить переменную в класс
Форумы портала PHP.SU » » Вопросы новичков » Встроить переменную в класс

Страниц (1): [1]
 

1. neatek - 29 Февраля, 2012 - 06:55:36 - перейти к сообщению
К примеру:

Файл с классом:
PHP:
скопировать код в буфер обмена
  1.  
  2. include('config');
  3.  
  4. Class Class_my
  5. {
  6.       public function Get_Variable()
  7.       {
  8.             $variable = $config['data'];
  9.       }
  10. }



Файл конфиг:


Как сделать чтобы в классе Class_my была переменная $config['data']...
Или придется писать функцию которая будет устанавливать переменные внутри класса?
2. DelphinPRO - 29 Февраля, 2012 - 06:58:03 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. include('config');
  2. Class Class_my
  3. {
  4.  
  5.       public $variable;
  6.  
  7.       public function __construct()
  8.       {
  9.             $this->variable = $config['data'];
  10.       }
  11.  
  12.       public function Get_Variable()
  13.       {
  14.             return $this->variable;
  15.       }
  16.  
  17. }
  18.  
  19. $c = new Class_my();
  20. var_dump($c->variable);

--------------------

не, по ходу я не так понял задачу )
3. neatek - 29 Февраля, 2012 - 07:01:00 - перейти к сообщению
ну ты просто вывел её, а её нужно наоборот ввести туда...

public function __construct()

Это какая-то особая функцию класса?
4. DelphinPRO - 29 Февраля, 2012 - 07:02:30 - перейти к сообщению
neatek пишет:
ну ты просто вывел её, а её нужно наоборот ввести туда...


в конструкторе? не подходит?
(Добавление)
neatek пишет:
Это какая-то особая функцию класса?

Это конструктор, вызываемый автоматически при создании экземпляра класса.

т.е. в этот момент она вызывается $c = new Class_my();
5. neatek - 29 Февраля, 2012 - 07:04:24 - перейти к сообщению
DelphinPRO пишет:
в конструкторе? не подходит?

Надо будет попробовать... спасиб
6. snikers987 - 29 Февраля, 2012 - 08:54:32 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. class Foo{
  3.     protected $rgConfig;
  4.     public function __construct($rgConfig = array()){
  5.         $this->rgConfig = $rgConfig;
  6.     }
  7.     public function getConfig(){
  8.         return $this->rgConfig;
  9.     }
  10.  
  11. }
  12. $conf['data'] = 1;
  13. $foo = new Foo($conf);
  14. $myconfig = $foo->getConfig();
  15. echo $myconfig['data']; //1
  16.  
7. neatek - 29 Февраля, 2012 - 12:09:10 - перейти к сообщению
snikers987, спасибо, то что нужно, весь массив...

 

Powered by ExBB FM 1.0 RC1