$ This-> config-> получить () - PullRequest
       0

$ This-> config-> получить ()

0 голосов
/ 15 сентября 2011

Я читаю чужой код (нужно внести в него некоторые изменения) и застрял в этой функции. Вероятно, это связано с подходом MVC и распространено в Интернете (я нашел много результатов Google), но я не смог найти то, что он на самом деле делает.

Я предполагаю, что это стандартный метод, общий для основных платформ CMS / PHP на основе MVC, но я не могу найти, где он написан или что он делает?

вот фрагмент кода для справки

foreach ($results as $result) {
            if ($this->config->get($result['key'] . '_status') && ($this->config->get($result['key'] . '_position') == 'left')) {
                $module_data[] = array(
                    'code'       => $result['key'],
                    'sort_order' => $this->config->get($result['key'] . '_sort_order')
                );

                $this->children[] = 'module/' . $result['key'];     
            }
        }

Я понимаю, что должен быть конфиг объекта с методом get ()

Но ни у класса, который содержит этот код (класс ControllerCommonColumnLeft), ни у класса, из которого он расширяется (расширяет контроллер), нет ни одного из них, поэтому я спрашиваю ...

1 Ответ

1 голос
/ 15 сентября 2011

Зависит от того, где он используется.В PHP $this относится к «текущему классу», поэтому, если у вас есть, например, в следующем коде, $this все равно, что сказать «Посмотрите в классе Person для ...»

class Person
{
    public function walk ($to)
    {
        echo 'I walked to ' . $to . '<br />';
    }

    public function eat ($food, $place)
    {
        // Here, $this->walk() calls Person->walk(), as '$this class' is called Person
        $this->walk($place);
        echo 'I ate a ' . $food . ' at ' . $place;
    }
}

$person = new Person;
$person->eat('jelly bean', 'the sweet shop');

Это может быть немного сложнее, когда вы начнете использовать static классы, но пока вам не стоит беспокоиться о них.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...