crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Вопросы по основам PHP
Litkevich Yuriy
  опции профиля:
сообщение 26.12.2012, 17:40
Сообщение #1


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Есть строка в коде:
<?php
class ControllerModuleCategory extends Controller {
    private $error = array();
    
    public function index() {
        $this->model_setting_setting->editSetting('category', $this->request->post); // <------------------
    }
}
?>

1) что такое $this в PHP?
2) что такое model_setting_setting?


---
предположения:
1) указатель/ссылка на объект (экземпляр класса) ControllerModuleCategory;
2) член (поле) класса ControllerModuleCategory, однако я не вижу чтоб его где-то объявили, в базовом тоже не вижу.

как это всё работает?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Iron Bug
  опции профиля:
сообщение 27.12.2012, 13:59
Сообщение #2


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Цитата(Litkevich Yuriy @ 27.12.2012, 11:08) *
да?

именно. и получается она из пути до имени файла. я внизу дописала, что это файл model/setting/setting.php. а в нём определён этот самый editSetting

Цитата(Litkevich Yuriy @ 27.12.2012, 11:08) *
Может ты мне сможешь объяснить, как такие вещи разыскивать?

с этим сложнее. начинаешь смотреть с класса, с загрузки этого конкретного скрипта. проблема в том, что в PHP могут include'иться любые файлы и они становятся частью кода. а классы на самом деле не совсем классы, они могут расширяться "на ходу". по сути, это именованные массивы. поэтому надо проверять всю цепочку загрузки до конкретного класса, чтобы понять, что туда попадает, в итоге.
я сначала смотрела исходный класс, потом Control, потом - Model. собственно, я вряд ли смогу формально изложить ход своих мыслей при исследовании этого вопроса. просто я поняла, как эта машина работает и тогда сразу нашла, где примерно собираются эти пути. тут чисто опыт программирования на PHP, наверное.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


9 чел. читают эту тему (гостей: 9, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 26.12.2024, 6:03