За последние 24 часа нас посетили 16750 программистов и 1621 робот. Сейчас ищут 867 программистов ...

Вопрос про конструкцию и страницы. класс.

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

  1. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Код (Text):
    1.     public function Page() {
    2.     $this->mod = (isset($_GET['page'])) ? $_GET['page'] : "index";
    3.     return $this->mod;
    4.     }
    Можно ли так в классе выводить инфу? К примеру задача функции определить текущий модуль.

    Встречный вопрос посложнее. В статье как-то находил не помню где. К примеру мне нужно вывести инфу из того что получилось в __construct. Если напрямую к объекту обратиться ругаться начинает... Там говорилось что написать что то еще нужно, а вот что забыл =(
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    нифига не понятно =)

    можно или нельзя - это вопрос применимости.

    Можно ли пилить пилой? - Можно.
    А ногу? - Можно.

    Через неделю будет пост "почему мне никто не сказал, что это так больно?!!11". - Выпей обезболивающего. "Я-то выпил, а вот тот, кому пилили..."

    Больше инфы! =) Больше!
     
  3. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    аха)
    з.ы и почему же меня не понимает никто вокруг =(
    :DD

    Просто если я что то делаю очень хочу слышать критику, т.к на ошибках люди учатся, в php оно то работает, но правильно ли работает..)

    Смотри, к примеру создал класс, запустил в нем __construct, он выполнил действие и вывел к примеру return $this->mod; мне стало любопытно, вот я могу вывести функцию:
    $obj = new ClassName;
    echo $obj->functionname();

    в которой заключено значение:
    return "Ололо привет землянин";
    p.s конечно можно и эхо написать в функции да просто вызвать её, но мне нравится извращенные варианты)

    Но как вывести из стандартного конструкта что то? я ведь не могу обратиться как

    echo $obj->__construct;

    p.s вообще мне это захиром не нужно, но стал интересен принцип)
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Invision
    Смотри, к примеру создал класс, запустил в нем __construct, он выполнил действие и вывел к примеру return $this->mod

    по-русски это звучит так:
    Смотри, к примеру создал класс, создаю экземпляр, вызывается __construct, он выполнил действие и возвратил к примеру $this->mod

    Invision
    Но как вывести из стандартного конструкта что то? я ведь не могу обратиться как

    ВОЗВРАТИТЬ? ты хочешь вернуть результат работы конструктора?
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
     
  6. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Не могу правильно выразиться, что поделать(
    Вот теперь понятно =)
     
  7. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Invision
    а зачем тебе получать значение из конструктора?
    экономишь одну строчку?
     
  8. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Вот только какого фига в примере

    http://ruseller.com/lessons.php?rub=37&id=653

    конструктор возвращает что то

    или это просто для примера..
     
  9. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    igordata, именно так :D
     
  10. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Invision
    он ВЫВОДИТ

    а не возвращает =) чуваг, проснись
     
  11. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    вот видишь, говорю же объяснять не умею)) до меня доперло ;)
     
  12. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    спасибо тебе)
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    обращайся =)
     
  14. titch

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

    С нами с:
    18 дек 2010
    Сообщения:
    847
    Симпатии:
    0
    конструктор возвращает объект. ни для каких иных задач его лучше не использовать. видел реализацию, когда в конструктор передаётся также параметр по ссылке и через него возвращают всякую фигню. а ошибки через exception. вариант не плохой, на счёт ошибок согласен, но если класс затачивать под универсальность, то по ссылке пускай лучше в конструктор передаются только другие объекты, если надо. задача конструктора - конструировать объекты, а не работать еще какую-то работу
     
  15. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Ясно, наивно я полагал, что конструктор просто для того чтобы запускаться всегда впереди))
     
  16. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    да ну. это просто попытки почесаться левой пяткой. Одна единственная строка решает все эти бредосы.