CConsoleApplication
| 包 | system.console |
|---|---|
| 继承 | class CConsoleApplication » CApplication » CModule » CComponent |
| 可用自 | 1.0 |
| 版本 | $Id$ |
CConsoleApplication extends CApplication by providing functionalities specific to console requests. In particular, it deals with console requests through a command-based approach:
- A console application consists of one or several possible user commands;
- Each user command is implemented as a class extending CConsoleCommand;
- User specifies which command to run on the command line;
- The command processes the user request with the specified parameters.
The command classes reside in the directory commandPath. The name of the class follows the pattern: <command-name>Command, and its file name is the same the class name. For example, the 'ShellCommand' class defines a 'shell' command and the class file name is 'ShellCommand.php'.
To run the console application, enter the following on the command line:
php path/to/entry_script.php[param 1] [param 2] ...
You may use the following to see help instructions about a command:
php path/to/entry_script.php help
公共属性
| 属性 | 类型 | 描述 | 被定义在 |
|---|---|---|---|
| basePath | string | the root directory of the application. | CApplication |
| behaviors | array | the behaviors that should be attached to the module. | CModule |
| cache | CCache | the cache application component. | CApplication |
| charset | string | the charset currently used for the application. | CApplication |
| commandMap | array | mapping from command name to command configurations. | CConsoleApplication |
| commandPath | string | the directory that contains the command classes. | CConsoleApplication |
| commandRunner | CConsoleCommandRunner | Returns the command runner. | CConsoleApplication |
| components | array | the currently loaded components (indexed by their IDs) | CModule |
| coreMessages | CPhpMessageSource | the core message translations | CApplication |
| dateFormatter | CDateFormatter | the locale-dependent date formatter. | CApplication |
| db | CDbConnection | the database connection | CApplication |
| errorHandler | CErrorHandler | the error handler application component. | CApplication |
| extensionPath | string | Returns the root directory that holds all third-party extensions. | CApplication |
| id | string | a unique identifier for the application. | CApplication |
| language | string | the language that the user is using and the application should be targeted to. | CApplication |
| locale | CLocale | the locale instance | CApplication |
| messages | CMessageSource | the application message translations | CApplication |
| modulePath | string | the directory that contains the application modules. | CModule |
| modules | array | the configuration of the currently installed modules (module ID => configuration) | CModule |
| name | string | the application name. | CApplication |
| numberFormatter | CNumberFormatter | the locale-dependent number formatter. | CApplication |
| params | CAttributeCollection | the list of user-defined parameters | CModule |
| parentModule | CModule | the parent module. | CModule |
| preload | array | the IDs of the application components that should be preloaded. | CModule |
| request | CHttpRequest | the request component | CApplication |
| runtimePath | string | the directory that stores runtime files. | CApplication |
| securityManager | CSecurityManager | the security manager application component. | CApplication |
| sourceLanguage | string | the language that the application is written in. | CApplication |
| statePersister | CStatePersister | the state persister application component. | CApplication |
| timeZone | string | Returns the time zone used by this application. | CApplication |
| urlManager | CUrlManager | the URL manager component | CApplication |
公共方法
| 方法 | 描述 | 被定义在 |
|---|---|---|
| __call() | Calls the named method which is not a class method. | CComponent |
| __construct() | Constructor. | CApplication |
| __get() | Getter magic method. | CModule |
| __isset() | Checks if a property value is null. | CModule |
| __set() | Sets value of a component property. | CComponent |
| __unset() | Sets a component property to be null. | CComponent |
| asa() | Returns the named behavior object. | CComponent |
| attachBehavior() | Attaches a behavior to this component. | CComponent |
| attachBehaviors() | Attaches a list of behaviors to the component. | CComponent |
| attachEventHandler() | Attaches an event handler to an event. | CComponent |
| canGetProperty() | Determines whether a property can be read. | CComponent |
| canSetProperty() | Determines whether a property can be set. | CComponent |
| clearGlobalState() | Clears a global value. | CApplication |
| configure() | Configures the module with the specified configuration. | CModule |
| detachBehavior() | Detaches a behavior from the component. | CComponent |
| detachBehaviors() | Detaches all behaviors from the component. | CComponent |
| detachEventHandler() | Detaches an existing event handler. | CComponent |
| disableBehavior() | Disables an attached behavior. | CComponent |
| disableBehaviors() | Disables all behaviors attached to this component. | CComponent |
| displayError() | Displays the captured PHP error. | CConsoleApplication |
| displayException() | Displays the uncaught PHP exception. | CConsoleApplication |
| enableBehavior() | Enables an attached behavior. | CComponent |
| enableBehaviors() | Enables all behaviors attached to this component. | CComponent |
| end() | Terminates the application. | CApplication |
| findLocalizedFile() | Returns the localized version of a specified file. | CApplication |
| getBasePath() | CApplication | |
| getCache() | CApplication | |
| getCommandPath() | CConsoleApplication | |
| getCommandRunner() | Returns the command runner. | CConsoleApplication |
| getComponent() | Retrieves the named application component. | CModule |
| getComponents() | CModule | |
| getCoreMessages() | CApplication | |
| getDateFormatter() | CApplication | |
| getDb() | CApplication | |
| getErrorHandler() | CApplication | |
| getEventHandlers() | Returns the list of attached event handlers for an event. | CComponent |
| getExtensionPath() | Returns the root directory that holds all third-party extensions. | CApplication |
| getGlobalState() | Returns a global value. | CApplication |
| getId() | CApplication | |
| getLanguage() | CApplication | |
| getLocale() | CApplication | |
| getMessages() | CApplication | |
| getModule() | Retrieves the named application module. | CModule |
| getModulePath() | CModule | |
| getModules() | CModule | |
| getNumberFormatter() | CApplication | |
| getParams() | CModule | |
| getParentModule() | CModule | |
| getRequest() | CApplication | |
| getRuntimePath() | CApplication | |
| getSecurityManager() | CApplication | |
| getStatePersister() | CApplication | |
| getTimeZone() | Returns the time zone used by this application. | CApplication |
| getUrlManager() | CApplication | |
| handleError() | Handles PHP execution errors such as warnings, notices. | CApplication |
| handleException() | Handles uncaught PHP exceptions. | CApplication |
| hasComponent() | CModule | |
| hasEvent() | Determines whether an event is defined. | CComponent |
| hasEventHandler() | Checks whether the named event has attached handlers. | CComponent |
| hasProperty() | Determines whether a property is defined. | CComponent |
| onBeginRequest() | Raised right BEFORE the application processes the request. | CApplication |
| onEndRequest() | Raised right AFTER the application processes the request. | CApplication |
| onError() | Raised when a PHP execution error occurs. | CApplication |
| onException() | Raised when an uncaught PHP exception occurs. | CApplication |
| processRequest() | Processes the user request. | CConsoleApplication |
| raiseEvent() | Raises an event. | CComponent |
| run() | Runs the application. | CApplication |
| setAliases() | Defines the root aliases. | CModule |
| setBasePath() | Sets the root directory of the application. | CApplication |
| setCommandPath() | CConsoleApplication | |
| setComponent() | Puts a component under the management of the module. | CModule |
| setComponents() | Sets the application components. | CModule |
| setExtensionPath() | CApplication | |
| setGlobalState() | Sets a global value. | CApplication |
| setId() | CApplication | |
| setImport() | Sets the aliases that are used in the module. | CModule |
| setLanguage() | Specifies which language the application is targeted to. | CApplication |
| setModulePath() | CModule | |
| setModules() | Configures the sub-modules of this module. | CModule |
| setParams() | CModule | |
| setRuntimePath() | CApplication | |
| setTimeZone() | Sets the time zone used by this application. | CApplication |
受保护的方法
| 方法 | 描述 | 被定义在 |
|---|---|---|
| createCommandRunner() | Creates the command runner instance. | CConsoleApplication |
| init() | Initializes the application by creating the command runner. | CConsoleApplication |
| initSystemHandlers() | Initializes the class autoloader and error handlers. | CApplication |
| loadGlobalState() | Loads the global state data from persistent storage. | CApplication |
| preinit() | Preinitializes the module. | CModule |
| preloadComponents() | Loads static application components. | CModule |
| registerCoreComponents() | Registers the core application components. | CApplication |
| saveGlobalState() | Saves the global state data into persistent storage. | CApplication |
事件
| 事件 | 描述 | 被定义在 |
|---|---|---|
| onBeginRequest | Raised right BEFORE the application processes the request. | CApplication |
| onEndRequest | Raised right AFTER the application processes the request. | CApplication |
| onException | Raised when an uncaught PHP exception occurs. | CApplication |
| onError | Raised when a PHP execution error occurs. | CApplication |
属性详情
mapping from command name to command configurations. Each command configuration can be either a string or an array. If the former, the string should be the file path of the command class. If the latter, the array must contain a 'class' element which specifies the command's class name or class path alias. The rest name-value pairs in the array are used to initialize the corresponding command properties. For example,
array(
'email'=>array(
'class'=>'path.to.Mailer',
'interval'=>3600,
),
'log'=>'path/to/LoggerCommand.php',
)
the directory that contains the command classes. Defaults to 'protected/commands'.
Returns the command runner.
方法详情
|
protected CConsoleCommandRunner createCommandRunner()
| ||
| {return} | CConsoleCommandRunner | the command runner |
Creates the command runner instance.
|
public void displayError(integer $code, string $message, string $file, string $line)
| ||
| $code | integer | error code |
| $message | string | error message |
| $file | string | error file |
| $line | string | error line |
Displays the captured PHP error. This method displays the error in console mode when there is no active error handler.
|
public void displayException(Exception $exception)
| ||
| $exception | Exception | the uncaught exception |
Displays the uncaught PHP exception. This method displays the exception in console mode when there is no active error handler.
|
public string getCommandPath()
| ||
| {return} | string | the directory that contains the command classes. Defaults to 'protected/commands'. |
|
public CConsoleCommandRunner getCommandRunner()
| ||
| {return} | CConsoleCommandRunner | the command runner. |
Returns the command runner.
|
protected void init()
|
Initializes the application by creating the command runner.
|
public void processRequest()
|
Processes the user request. This method creates a console command runner to handle the particular user command.
|
public void setCommandPath(string $value)
| ||
| $value | string | the directory that contains the command classes. |