Оглавление

Создание файла инициализации

Учетные данные пользователя БД пока что не сохранены как константы. Для решения этой задачи мы используем файл инициализации.

 
Файлы инициализации осуществляют сбор данных, загружают файлы и организуют информацию для использования в приложении. В нашем примере этот файл будет отвечать за загрузку и определение всех необходимых констант, создание объекта базы данных и настройку функции автозагрузки для классов.
Создайте файл с именем  init.inc.php в папке core (/sys/core/init.inc.php) и введите в него следующий код.

 


<?php 
 
/* 
 * Включить необходимую конфигурационную информацию 
 */ 
include_once '../sys/config/db-cred.inc.php'; 
 
/* 
 * Определить константы для конфигурационной информации
 */ 
foreach ( $C as $name => $val ) 
{ 
    define($name, $val); 
} 
 
/* 
 * Создать PDO-объект
 */ 
$dsn = "mysql:host=" . DB_HOST . ";dbname=" . DB_NAME; 
$dbo = new PDO($dsn, DB_USER, DB_PASS); 
 
/* 
 * Определить для классов функцию автозагрузки
 */ 
function __autoload($class) 
{ 
    $filename = "../sys/class/class." . $class . ".inc.php"; 
    if ( file_exists($filename) ) 
    { 
        include_once $filename; 
    } 
} 
 
?> 

 

Функция автозагрузки вызывается в тех случаях, когда в сценарии делается попытка создания экземпляра класса, но сам класс к этому времени еще не был загружен. Это весьма полезное средство, позволяющее легко осуществлять загрузку файлов в сценарий по требованию. Более подробную информацию относительно функции автоматической загрузки можно найти по адресу http://php.net/autoload.

Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити