написал так к тому что Я возможно не правильно интерпретирую это понятие.
для меня бизнес-логика - алгоритмы работы с данными, т.е. в архитектуре mvc работой с данными занимаются модели и по этому я модель причисляю к слою бизнес логики...
class Student_model {
private $fio;
private $ball; //средний балл
private $summ_ball = 0; //сумма балов
private $count_ball = 0; //кол-во баллов
private $curse;
function __construct($student_id) {
//устанавливаем свойства объекта(например из файла или бд)
$this->$summ_ball = 100;
$this->$count_ball = 20;
$this->fio = 'Иванов В.В.';
}
//пересчитываем средний балл, и записываем его в свойство
function setBall($ball) {
$this->summ_ball = $this->summ_ball+$ball;
$this->count_ball = $this->count_ball +1;
$this->ball = $this->summ_ball/$this->count_ball;
}
//возвращает свойство "средний балл"
function getBall() {
return $this->$ball;
}
function save() {
//сохраняем объект, например записываем его свойтсва в базу
}
}
class Student_controller {
//запрос на изменение балла студента
function StudentBall($student_id, $new_ball ) {
try { //проверяем валидность данных
validation::student($student_id);
validation::ball($new_ball);
} catch (Exception $e) {
die('не верный формат данных');
}
//создаем объект Студент
$student = new Student_model($student_id);
//меняем состояние объекта Студент
$student->setBall($new_ball);
//сохраняем Состояние объекта
$student->save();
//выводим информацию
$view = new View('successBall');
$view->setVar('ball', $student->getBall());
}
} в этом уроке явно видно, что контролер они используют исключительно для передачи информации во вьювер
в модели он полностью получает данные из бд и формирует уже готовый результат вплодь до форматирование
function initialize($params = array())
{
if (count($params) > 0)
{
foreach ($params as $key => $val)
{
if (isset($this->$key))
{
$this->$key = $val;
}
}
}
}
function set_id($id)
{
$this->id = $id;
}
function set_name($name)
{
$this->name = $name;
}
function get_news($page)
{
//
}
function append()
{
$insert['a'] = $this->input->post('aaa');
$insert['b'] = $this->input->post('bbb');
$this->db->insert('ssdf', $insert);
}
Вернуться в Общие вопросы по фреймворку
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0