-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTestController.php
More file actions
66 lines (57 loc) · 2.01 KB
/
TestController.php
File metadata and controls
66 lines (57 loc) · 2.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
/****************************************************
* Тестовое задание для оценки уроовня владения PHP *
* *
* @author Антон Прибора *
* @copyright Bronevik.com *
****************************************************/
/**
* Тестовый контроллер
*/
class TestController extends ActionController
{
/**
* Общая инициализация контроллера, выполняется для всех действий
*/
public function _init()
{
// Добавление пунктов в левое меню
$this->_layout->LocalMenu->add('<a href="/Test/Database/">Выборка из базы</a>');
$this->_layout->LocalMenu->add('<a href="/Test/phpinfo/" target="_blank">phpinfo()</a>');
}
/**
* Действие по умолчанию
*/
public function IndexAction()
{
// Просто отображаем шаблон Scripts/Views/Test/Index.phtml
}
/**
* Пример работы с базой
*/
public function DatabaseAction()
{
// Выполнение запроса
$stm = $this->_db->query('SHOW DATABASES');
// Сохранение результатов
$this->_view->databases = $stm->fetchAll();
// Обязательное закрытие курсора, иначе последующе запросы могут вызывать ошибки
$stm->closeCursor();
// Пример выборки таблиц из базы данных
$stm = $this->_db->query('SHOW TABLES');
$this->_view->tables = $stm->fetchAll();
$stm->closeCursor();
}
/**
* Отображение страницы с информацией о php
*/
public function phpinfoAction()
{
// Отключение вида
$this->_view->disable();
// Отключение основного шаблона
$this->_layout->disable();
// Отображение информации
phpinfo();
}
}