За последние 24 часа нас посетили 57048 программистов и 1682 робота. Сейчас ищут 1255 программистов ...

Вопрос по классу

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

  1. ALEXU

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

    С нами с:
    5 апр 2011
    Сообщения:
    79
    Симпатии:
    0
    Адрес:
    Russia
    Привет всем)

    Я нубоват в классах.

    Есть такой вот незамысловатый класс metaInfo
    PHP:
    1. <?php
    2. class metaInfo
    3. {
    4.     var $Title;
    5.     var $Description;
    6.     var $Keywords;
    7.  
    8.     function MetaDisplay()
    9.     {
    10.         $this->DisplayTitle();
    11.         $this->DisplayDescription();
    12.         $this->DisplayKeywords();
    13.     }
    14.  
    15.     function DisplayTitle()
    16.     {
    17.         $res = '<title>'.$this->Title.'</title>';
    18.         return $res;
    19.     }
    20.  
    21.     function DisplayDescription()
    22.     {
    23.         $res = '<meta name="description" content="'.$this->Description.'" />';
    24.         return $res;
    25.     }
    26.  
    27.     function DisplayKeywords()
    28.     {
    29.         $res =  '<meta name="keywords" content="'.$this->Keywords.'" />';
    30.         return $res;
    31.     }
    32. }
    Как можно сделать, чтобы в переменную smarty падали уже все данные одной пачкой?

    так оно конечно работает, но не то
    $smarty->assign('META',$metaInfo->DisplayTitle());

    А
    $smarty->assign('META',$metaInfo->MetaDisplay());
    ничего не выводит.
    Точнее выводит, если вместо $res = ставить эхо. Но тогда вывод идет ВЫШЕ <html>, что не приемлемо.

    Гуру, киньте камнем в нужную сторону а?
     
  2. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    function MetaDisplay()
    {
    return $this->DisplayTitle().$this->DisplayDescription().$this->DisplayKeywords();
    }
     
  3. ALEXU

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

    С нами с:
    5 апр 2011
    Сообщения:
    79
    Симпатии:
    0
    Адрес:
    Russia
    Блин. Что-то я тупой не допер(
    Спасибо большое)
     
  4. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    я бы в массив данные передавал и все. Будет пачкой =)

    array
     
  5. ALEXU

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

    С нами с:
    5 апр 2011
    Сообщения:
    79
    Симпатии:
    0
    Адрес:
    Russia
    Нужно будет попробовать с массивом, спасибо за наводку. кода будет в любом случае меньше вроде.

    Я в PHP совсем мало разбираюсь. По этому до меня оптимальные решения долго доходят...)
     
  6. NR55RU

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

    С нами с:
    16 фев 2011
    Сообщения:
    88
    Симпатии:
    0
    ALEXU
    Вся проблема в том что внутри функции все твои функции отрабатываются но все это лишь там внутри, остальной код понятия не имеет что там происходит и функции надо сказать что вернуть наружу для чего существует команда return вот что ты этой команде передашь то и вылазит наружу :)

    Ты отработал все внутри но наружу ничего не вернул :)
     
  7. ALEXU

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

    С нами с:
    5 апр 2011
    Сообщения:
    79
    Симпатии:
    0
    Адрес:
    Russia
    Да, я уже понял))) Спасибо)