русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Зачем всё это нужно


Дата добавления: 2015-07-09; просмотров: 543; Нарушение авторских прав


 

А затем, чтобы наш код был логичным и структурированным. Вот вам пример реализации навигации внутри приложения, например:

 

(код получился довольно объемным, поэтому он приведен на странице ниже.)

Немного о том, что ожидает вас на следующей стрнице:

Операторы
=== Абсолютное сравнение
! Отрицание, «не»
@ Оператор безопасного выполнения кода с игнорированием ошибок
( условие ? да : нет ) Тернарный оператор, аналог “if” для однострочных действий (рассказывал ранее)
{$переменная} Фигурные скобки для прямого использования переменной внутри кавычек с текстовым значением
Функции
file_exists Проверяет сущестование файла внутри файловой системы
include Вложение файла (подключение еще одного PHP скрипта)

Можете попробовать реализовать этот код у себя. Для корректной работы нужно создать папку pages, а в ней – файл page.home.php (можно пустой), либо не создавать их и довольстоваться ошибками.

 

 

class Router {

protected $currentPage = null;

protected $currentFile = null;

protected $errorDesc = null;

 

/* Создаём конструктор: если функцию назвать __construct,

* то она станет "магической" и будет исполняться сразу же,

* как только мы создаём новый экземпляр класса.

*

* Такая функция в классе может быть только одна.

*/

public function __construct() {

$this->currentPage =

( $_GET[ 'page' ] ? $_GET[ 'page' ] : 'home' );

 

$this->currentFile = "pages/page.{$this->currentPage}.php";

if( $this->loadPage( $this->currentFile ) === false )

exit( 'Ошибка при загрузке файла: ' . $this->errorDesc );

return true;

}

 

private function loadPage( $page ) {

// Функция file_exists проверяет наличие файла



if( !file_exists( $page ) ) {

$this->errorDesc = 'Файл не существует';

return false;

}

 

if( ! @include( $page ) ) {

$this->errorDesc = 'Файл поврежден';

return false;

}

 

return true;

}

 

public function getCurrentPageName() {

return $this->currentPage;

}

 

public function getCurrentPageFile() {

return $this->currentFile;

}

}

 

$router = new Router();

 

Это первый пример практической реализации класса и паттерна ООП.



<== предыдущая лекция | следующая лекция ==>
Учим PHP работать с функциями и переменными внутри класса | Первая жесть из бесконечности: реализация метода Singleton


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.007 сек.