On this page
Class App
App is responsible for resource location, and path management.
Adding paths
Additional paths for Templates and Plugins are configured with Configure now. See config/app.php for an example. The App.paths.plugins
and App.paths.templates
variables are used to configure paths for plugins and templates respectively. All class based resources should be mapped using your application's autoloader.
Inspecting loaded paths
You can inspect the currently loaded paths using App::path('Controller')
for example to see loaded controller paths.
It is also possible to inspect paths for plugin classes, for instance, to get the path to a plugin's helpers you would call App::path('View/Helper', 'MyPlugin')
Locating plugins
Plugins can be located with App as well. Using Plugin::path('DebugKit') for example, will give you the full path to the DebugKit plugin.
Link: http://book.cakephp.org/3.0/en/core-libraries/app.html
Location: Core/App.php
Method Summary
- _classExistsInBase
-
Return the class name namespaced. This method checks if the class is defined on the application/plugin, otherwise try to load from the CakePHP core
- Returns the full path to a package inside the CakePHP core
- Used to read information stored path
- Returns the plugin split name of a class
Method Detail
_classExistsInBase()source protected static
_classExistsInBase( string $name , string $namespace )
_classExistsInBase
Test isolation wrapper
Parameters
-
string
$name
- Class name.
-
string
$namespace
- Namespace.
Returns
booleanclassName()source public static
className( string $class , string $type '' , string $suffix '' )
Return the class name namespaced. This method checks if the class is defined on the application/plugin, otherwise try to load from the CakePHP core
Parameters
-
string
$class
- Class name
-
string
$type
optional '' - Type of class
-
string
$suffix
optional '' - Class name suffix
Returns
boolean|stringFalse if the class is not found or namespaced class name
core()source public static
core( string $type )
Returns the full path to a package inside the CakePHP core
Usage:
App::core('Cache/Engine');
Will return the full path to the cache engines package.
Parameters
-
string
$type
- Package type.
Returns
arrayFull path to package
path()source public static
path( string $type , string|null $plugin null )
Used to read information stored path
Usage:
App::path('Plugin');
Will return the configured paths for plugins. This is a simpler way to access the App.paths.plugins
configure variable.
App::path('Model/Datasource', 'MyPlugin');
Will return the path for datasources under the 'MyPlugin' plugin.
Parameters
-
string
$type
- type of path
-
string|null
$plugin
optional null - name of plugin
Returns
arrayLink
http://book.cakephp.org/3.0/en/core-libraries/app.html#finding-paths-to-namespacesshortName()source public static
shortName( string $class , string $type , string $suffix '' )
Returns the plugin split name of a class
Examples:
App::shortName(
'SomeVendor\SomePlugin\Controller\Component\TestComponent',
'Controller/Component',
'Component'
)
Returns: SomeVendor/SomePlugin.Test
App::shortName(
'SomeVendor\SomePlugin\Controller\Component\Subfolder\TestComponent',
'Controller/Component',
'Component'
)
Returns: SomeVendor/SomePlugin.Subfolder/Test
App::shortName(
'Cake\Controller\Component\AuthComponent',
'Controller/Component',
'Component'
)
Returns: Auth
Parameters
-
string
$class
- Class name
-
string
$type
- Type of class
-
string
$suffix
optional '' - Class name suffix
Returns
stringPlugin split name of class
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/3.2/class-Cake.Core.App.html