# The Yaf_Application class

(No version information available, might only be in Git)

## Introduction

Yaf_Application provides a bootstrapping facility for applications which provides reusable resources, common- and module-based bootstrap classes and dependency checking.

> Note:

> Yaf_Application implements the singleton pattern, and Yaf_Application can not be serialized or unserialized which will cause problem when you try to use PHPUnit to write some test case for Yaf.

> You may use @backupGlobals annotation of PHPUnit to control the backup and restore operations for global variables. thus can solve this problem.

## Class synopsis

final Yaf_Application {
/* Properties */
protected $config ;
protected $dispatcher ;
protected static $_app ;
protected $_modules ;
protected $_running ;
protected $_environ ;
/* Methods */
public static app ( void ) : mixed
public bootstrap ([ Yaf_Bootstrap_Abstract `$bootstrap` ] ) : void
public clearLastError ( void ) : Yaf_Application
private __clone ( void ) : void
public __construct ( mixed `$config` [, string `$envrion` ] )
public __destruct ( void ) : void
public environ ( void ) : void
public execute ( callable `$entry` , string `$...` ) : void
public getAppDirectory ( void ) : Yaf_Application
public getConfig ( void ) : Yaf_Config_Abstract
public getDispatcher ( void ) : Yaf_Dispatcher
public getLastErrorMsg ( void ) : string
public getLastErrorNo ( void ) : int
public getModules ( void ) : array
public run ( void ) : void
public setAppDirectory ( string `$directory` ) : Yaf_Application
private __sleep ( void ) : void
private __wakeup ( void ) : void
}

## Properties

config

dispatcher

_app

_modules

_running

_environ

## Table of Contents

- Yaf_Application::app — Retrieve an Application instance
- Yaf_Application::bootstrap — Call bootstrap
- Yaf_Application::clearLastError — Clear the last error info
- Yaf_Application::__clone — Yaf_Application can not be cloned
- Yaf_Application::__construct — Yaf_Application constructor
- Yaf_Application::__destruct — The __destruct purpose
- Yaf_Application::environ — Retrive environ
- Yaf_Application::execute — Execute a callback
- Yaf_Application::getAppDirectory — Get the application directory
- Yaf_Application::getConfig — Retrive the config instance
- Yaf_Application::getDispatcher — Get Yaf_Dispatcher instance
- Yaf_Application::getLastErrorMsg — Get message of the last occurred error
- Yaf_Application::getLastErrorNo — Get code of last occurred error
- Yaf_Application::getModules — Get defined module names
- Yaf_Application::run — Start Yaf_Application
- Yaf_Application::setAppDirectory — Change the application directory
- Yaf_Application::__sleep — Yaf_Application can not be serialized
- Yaf_Application::__wakeup — Yaf_Application can not be unserialized