За последние 24 часа нас посетили 32002 программиста и 1380 роботов. Сейчас ищут 902 программиста ...

Доступ к элементу массива в ООП стиле

Тема в разделе "Прочие вопросы по PHP", создана пользователем Taris, 13 май 2008.

  1. Taris

    Taris Активный пользователь

    С нами с:
    13 май 2008
    Сообщения:
    29
    Симпатии:
    0
    Как реализовать подобную схему?

    Было
    PHP:
    1.  
    2. $data = $this->getModule($mod_name);
    3. echo $data['module_title'];
    4.  
    Стало
    PHP:
    1.  
    2. echo $this->getModule($mod_name)->module_title;
    3.  
     
  2. vlad-net

    vlad-net Активный пользователь

    С нами с:
    28 июл 2006
    Сообщения:
    42
    Симпатии:
    0
    Адрес:
    Москва
    Чтобы это сделать есть только один путь: $this->getModule($mod_name) должно возвращать объект. Массив не будет работать в "ООП стиле".

    Также наверное тебе будут интересны magic-методы любого объекта PHP: __get() и __set()
     
  3. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    PHP:
    1. <?php
    2. class Test {
    3.     public function get() {
    4.         $obj = new StdClass();
    5.         $obj->hello = 'world!';
    6.    
    7.         return $obj;
    8.     }
    9. }
    10.  
    11. $t = new Test;
    12. print $t->get()->hello;
    Например так.
     
  4. vlad-net

    vlad-net Активный пользователь

    С нами с:
    28 июл 2006
    Сообщения:
    42
    Симпатии:
    0
    Адрес:
    Москва
  5. Taris

    Taris Активный пользователь

    С нами с:
    13 май 2008
    Сообщения:
    29
    Симпатии:
    0
    Спасибо, буду разбираться