В общем потихоньку постигаю фреймворк CodeIgniter да и PHP в целом... Изучаю вышеупомянутое по видеурокам и мануалу... И сразу же столкнулся с совершенно жуткой проблемой. Заключается она в следующем (изучение проходит на примере программирования простенького блога): -есть структура фреймворка(MVC-модель-вид-контроллер) -есть 2 таблицы в базе данных(в одной категории, в другой статьи для данных категорий) -есть модель pages_model следующего содержания: Код (Text): function __construct() { parent::__construct(); } function get_pages() { $query = $this->db->get('categories'); return $query->result_array(); } function get_pages_info($title) { $this->db->where('title_en',$title); $query = $this->db->get('categories'); return $query->row_array(); } В ней есть два метода:get_pages()-получает информацию из таблицы categories и возвращает результат. get_pages_info-получает информацию по отдельной категории по title_en. -есть контроллер pages следующего содержания: Код (Text): public function index() { redirect(base_url()); } public function page($title) { $data['pages'] = $this->pages_model->get_pages(); $data['pages_info'] = $this->pages_model->get_pages_info($title); $this->template->page_view($data); } $data['pages_info']-этот массив хранит все данные по конкретной статье (как я понимаю) -есть вид в котором в цикле foreach выводятся категории при клике по которым происходит переход к виду конкретной страницы: Код (Text): <?php foreach($pages as $item):?> Категория: <a class="one" href="<?=base_url();?>index.php/pages/page/<?=$item['title_en'];?>"><?=$item['title'];?></a> <span><?=$item['count_view'];?></span><br /> <?php endforeach;?> ВОПРОС - для получения информации по каждой странице используется переменная $title ...но она ведь не определена...или я чего-то не понимаю...как это работает -поясните если можно неучу)))
это совет?внушение?или что? для чего нужен форум-если на вопрос как это работает? ответили-определи???типа стандартный ответ-почитай тут и ссылка на документацию))) ну знаю я что при вызове контроллера(метода в нём) передаётся что-то...и что? или что есть функция обновления данных update...это ведь чистая теория)я хочу знать как это работает....
$title - параметр функции. Код, который функцию вызывает, я не увидел. Ёлки, как можно, не зная ещё языка, лезть в ООП и MVC? Надо сначала изучить синтаксис, основные понятия.
- это роут прописанный в конфиге(обращение к контроллеру по умолчанию)- Код (Text): $route['default_controller'] = "pages/page/stat1"; основные понятия я допустим изучу... далее как мне их применить? чтобы что-то применять нужно понимать как это работает на практике...или я не прав? сухая теория - не совсем то) это как учиться вождению по книге) не правилам по которым необходимо водить))а самому вождению))
и кстати всеми любимый фреймворк symfony написан по сути человеком, который вообще не изучал пхп4 и теорию , а начал именно с ООП...и это помогло ему написать всё чисто и структурировано ...
Приятно, когда такие простые вещи, как "определи", кажутся человеку столь невероятными, что он даже злится. Чую себя невероятным умником.
Вот давай представим-я научился ездить на велосипеде и даже правила по которым на нём нужно ездить тоже знаю, как мне это поможет в обучении вождения фуры???? принцип совсем разный... Добавлено спустя 1 минуту 8 секунд: изобретение велосипеда в 21 веке - это просто чудо))несомненно Вы настоящий умник)
после велосипеда, ты сядешь на мопед...потом на мотоцикл, легковая машина, грузовая машина И ТОЛЬКО ПОТОМ фура
а если мне не нужно учиться водить мопед, чтоб обучиться вождению фуры и это действительно так, то что мне предложите? Добавлено спустя 1 минуту 8 секунд: http://snipcode.ru/ твой сайт?
c чего ты взял что я буду тебе что то предлагать??? Делай как хочешь, мне срать 3 кучи, тебе говорят что ты в кабину жопой вперед хочешь залезть... не получают люди сначала высшего образования а потом идут в начальную школу, понимаешь??? Или с этит то же будешь спорить?
Причём тут жопа,срать и кучи не пойму...вроде адекватный человек...я тебе объясняю что писал в процедурном стиле...основы знаю...как теперь применить вопрос...
Чтоб программировать нормально на фреймворке, надо (по опыту) быть способным прочитать код этого фреймворка, понять, как оно работает изнутри. Иначе бесполезно. Вот если бы мне дали сопровождать этот код, то я бы выяснил, в каком именно месте фреймворк вызывает (у меня, кстати, был опыт сопровождения/дополнения кода на фреймворах, которые я не знаю). Причём здесь php4? Я думаю, разработчик symfony всё-таки программировать умел. Хотя мне этот фреймворк не очень.
Содержательно до ужаса... вобщем программируй на чистом пхп и дальше....всё что можно тебе пожелать)) и да- "Не смеши" меня...
По поводу как связано процедурное программирование и ООП. Да, принцип проектирования разный. Но, физически методы классов - это те же функции, просто получающие дополнительно скрытый параметр $this (недаром первоначально код C++ транслировался в процедурный C). PHP в этом не исключение. Если вы спрашиваете, как инициализируется $title, являющийся параметром, то это недостаток понимания именно функций.
Судя по роуту Код (Text): $route['default_controller'] = "pages/page/stat1"; $title - это последняя часть, stat1. Не работал, если честно, с CodeIgniter, но много работаю с его форком Kohana (правда, придётся на что-то переходить, он что-то перестал развиваться).
разобрался...спасибо за ответ) Codeigniter 2.1 уже есть...вроде обещали не останавливаться) нравиться что он прост в понимании)
какого нафик велосипеда. Ты сказал что у тебя переменная не определена. Я сказал определи. Ты психанул. Хз вообще как за твоим потоком мыслей уследить. У тебя видимо и самого это не выходит.
Да изучите сначала ооп, а потом уже и разбирайте фреймворки. Ну как можно разбирать то, что непонимание. (М. Зандстра PHP. Объекты, шаблоны и методики программирования)