Class CakeObject
CakeObject class provides a few generic methods used in several subclasses.
Also includes methods for logging and the special method RequestAction, to call other Controllers' Actions from anywhere.
Direct Subclasses
Indirect Subclasses
- AclBehavior
- AclComponent
- EmailComponent
- FlashComponent
- InterceptContentHelper
- JsonView
- MediaView
- Mysql
- PaginatorComponent
- Postgres
- RequestHandlerComponent
- ScaffoldView
- AclNode
- SecurityComponent
- SessionComponent
- Sqlite
- Sqlserver
- TestShell
- TestsuiteShell
- ThemeView
- TranslateBehavior
- TreeBehavior
- XmlView
- Aco
- Aro
- AuthComponent
- CakeTestModel
- ContainableBehavior
- CookieComponent
- DboSource
Copyright: Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
License: MIT License
Location: Cake/Core/CakeObject.php
Method Summary
-
__construct() public
Constructor, no-op -
_mergeVars() protected
Merges this objects $property with the property in $class' definition. This classes value for the property will be merged on top of $class'
-
_set() protected
Allows setting of multiple properties of the object in a single line of code. Will only set properties that are part of a class declaration.
-
_stop() protected
Stop execution of the current script. Wraps exit() making testing easier.
-
dispatchMethod() public
Calls a method on this object with the given parameters. Provides an OO wrapper for
call_user_func_array
-
log() public
Convenience method to write a message to CakeLog. See CakeLog::write() for more information on writing to logs.
-
requestAction() public
Calls a controller's method from any location. Can be used to connect controllers together or tie plugins into a main application. requestAction can be used to return rendered views or fetch the return value from controller actions.
-
toString() public
CakeObject-to-string conversion. Each class can override this method as necessary.
Method Detail
_mergeVars() protected ¶
_mergeVars( array $properties , string $class , boolean $normalize = true )
Merges this objects $property with the property in $class' definition. This classes value for the property will be merged on top of $class'
This provides some of the DRY magic CakePHP provides. If you want to shut it off, redefine this method as an empty function.
Parameters
- array $properties
- The name of the properties to merge.
- string $class
- The class to merge the property with.
- boolean $normalize optional true
- Set to true to run the properties through Hash::normalize() before merging.
_set() protected ¶
_set( array $properties = array() )
Allows setting of multiple properties of the object in a single line of code. Will only set properties that are part of a class declaration.
Parameters
- array $properties optional array()
- An associative array containing properties and corresponding values.
_stop() protected ¶
_stop( integer|string $status = 0 )
Stop execution of the current script. Wraps exit() making testing easier.
Parameters
- integer|string $status optional 0
- see http://php.net/exit for values
dispatchMethod() public ¶
dispatchMethod( string $method , array $params = array() )
Calls a method on this object with the given parameters. Provides an OO wrapper
for call_user_func_array
Parameters
- string $method
- Name of the method to call
- array $params optional array()
- Parameter list to use when calling $method
Returns
Returns the result of the method call
log() public ¶
log( mixed $msg , integer $type = LOG_ERR , null|string|array $scope = null )
Convenience method to write a message to CakeLog. See CakeLog::write() for more information on writing to logs.
Parameters
- mixed $msg
- Log message
- integer $type optional LOG_ERR
- Error type constant. Defined in app/Config/core.php.
- null|string|array $scope optional null
The scope(s) a log message is being created in. See CakeLog::config() for more information on logging scopes.
Returns
Success of log write
requestAction() public ¶
requestAction( string|array $url , array $extra = array() )
Calls a controller's method from any location. Can be used to connect controllers together or tie plugins into a main application. requestAction can be used to return rendered views or fetch the return value from controller actions.
Under the hood this method uses Router::reverse() to convert the $url parameter into a string URL. You should use URL formats that are compatible with Router::reverse()
Passing POST and GET data
POST and GET data can be simulated in requestAction. Use $extra['url']
for
GET data. The $extra['data']
parameter allows POST data simulation.
Parameters
- string|array $url
String or array-based URL. Unlike other URL arrays in CakePHP, this URL will not automatically handle passed and named arguments in the $url parameter.
- array $extra optional array()
if array includes the key "return" it sets the AutoRender to true. Can also be used to submit GET/POST data, and named/passed arguments.
Returns
Boolean true or false on success/failure, or contents of rendered action if 'return' is set in $extra.
toString() public ¶
toString( )
CakeObject-to-string conversion. Each class can override this method as necessary.
Returns
The name of this class