PHPerKaigi 2024

Yaf_Application::bootstrap

(Yaf >=1.0.0)

Yaf_Application::bootstrapВызвать bootstrap

Описание

public Yaf_Application::bootstrap(Yaf_Bootstrap_Abstract $bootstrap = ?): void

Запускает Bootstrap, все методы определённые в Bootstrap и именованные с префиксом "_init" будут вызваны в порядке их определения. Если параметр bootstrap не задан, Yaf будет его искать по пути, указанному в application.directory.

Список параметров

bootstrap

Экземпляр класса Yaf_Bootstrap_Abstract

Возвращаемые значения

Экземпляр класса Yaf_Application

Примеры

Пример #1 Пример использования Bootstrap()

<?php
/**
* Этот файл должен находиться по пути APPLICATION_PATH . "/application/"
* (который определён в конфигурационном файле приложения Yaf_Application).
* и называться Bootstrap.php, чтобы Yaf_Application смог его найти
*/
class Bootstrap extends Yaf_Bootstrap_Abstract {
function
_initConfig(Yaf_Dispatcher $dispatcher) {
echo
"первый метод вызван\n";
}

function
_initPlugin($dispatcher) {
echo
"второй метод вызван\n";
}
}
?>

Пример #2 Пример использования Yaf_Application::bootstrap()

<?php

defined
('APPLICATION_PATH') // Будет использован APPLICATION_PATH
|| define('APPLICATION_PATH', __DIR__);

$application = new Yaf_Application(APPLICATION_PATH.'/conf/application.ini');
$application->bootstrap();
?>

Вывод приведённого примера будет похож на:

первый метод вызван
второй метод вызван

Смотрите также

add a note

User Contributed Notes 1 note

up
1
brandon at brandonlamb dot com
12 years ago
Here is an example of a Bootstrap loading a session class then loading a database class and using a db configuration from the application config.

<?php
class Bootstrap extends Yaf_Bootstrap_Abstract
{
public function
_initSession(Yaf_Dispatcher $dispatcher)
{
$session = new Vendor\Session();
$session->start();
}

public function
_initDatabase(Yaf_Dispatcher $dispatcher)
{
$config = Yaf_Application::app()->getConfig()->application->database;
Yaf_Registry::set('db', Vendor\Database($config));
}
}
?>
To Top