За последние 24 часа нас посетили 17599 программистов и 1724 робота. Сейчас ищут 962 программиста ...

Общие действия у функций в одном классе

Тема в разделе "PHP для новичков", создана пользователем virus-07, 17 сен 2011.

  1. virus-07

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

    С нами с:
    9 май 2011
    Сообщения:
    37
    Симпатии:
    0
    Посоветуйте, пожалуйста: есть класс. в нем порядка 8-10 функций. у каждой функции свои действия, при этом есть по несколько строк кода, который повторяется для всех функций.
    PHP:
    1.  
    2. class Show {
    3.     public function first()
    4.     {
    5.               $data = array();
    6.               $this->some_library->some_motion();
    7.               ...
    8.     }
    9.    
    10.     public function second()
    11.     {
    12.                $data = array();
    13.                $this->some_library->some_motion();
    14.                ...
    15.     }
    16.    
    17.     public function third()
    18.     {
    19.                $data = array();
    20.                $this->some_library->some_motion();
    21.                ...
    22.     }
    23. }
    24.  
    Например, инициализирую массив и выполняю рутинное действие с библиотекой. Думал о функции-конструкторе, но я не создаю нового объекта класса. Выносить все в другую паблик-функцию и её вызывать? Или ещё есть что-то?
     
  2. Апельсин

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

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    а в контексте чего ты обращаешься к методам first(), second(), third().... ? Это ж не статик.
     
  3. HErATuB

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

    С нами с:
    22 авг 2011
    Сообщения:
    7
    Симпатии:
    0
    У тебя функции в классе не статик, а значит, у тебя объект создается.
     
  4. karlozzz

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

    С нами с:
    24 окт 2010
    Сообщения:
    430
    Симпатии:
    0
    Адрес:
    Y-OLA
    а private ф-ии отменили?
     
  5. karlozzz

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

    С нами с:
    24 окт 2010
    Сообщения:
    430
    Симпатии:
    0
    Адрес:
    Y-OLA
    Да и если можно один раз сформировать этот массив или что там у тебя, а потом всем использовать, то сохрани его в private пер-ю
     
  6. virus-07

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

    С нами с:
    9 май 2011
    Сообщения:
    37
    Симпатии:
    0
    Вылетала ошибка т.к. не указал у функции parent, — спасибо за объяснения. Кажется, вопрос решен.