: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
* CakePHP(tm) : Rapid Development Framework (https://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
* Redistributions of files must retain the above copyright notice.
* @copyright Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
* @link https://cakephp.org CakePHP(tm) Project
* @license https://opensource.org/licenses/mit-license.php MIT License
use Cake\Event\EventDispatcherInterface;
* Interface for Applications that leverage plugins & events.
* Events can be bound to the application event manager during
* the application's bootstrap and plugin bootstrap.
interface PluginApplicationInterface extends EventDispatcherInterface
* Add a plugin to the loaded plugin set.
* If the named plugin does not exist, or does not define a Plugin class, an
* instance of `Cake\Core\BasePlugin` will be used. This generated class will have
* all plugin hooks enabled.
* @param string|\Cake\Core\PluginInterface $name The plugin name or plugin object.
* @param array $config The configuration data for the plugin if using a string for $name
public function addPlugin($name, array $config = []);
* Run bootstrap logic for loaded plugins.
public function pluginBootstrap();
* Run routes hooks for loaded plugins
* @param \Cake\Routing\RouteBuilder $routes The route builder to use.
* @return \Cake\Routing\RouteBuilder
public function pluginRoutes($routes);
* Run middleware hooks for plugins
* @param \Cake\Http\MiddlewareQueue $middleware The MiddlewareQueue to use.
* @return \Cake\Http\MiddlewareQueue
public function pluginMiddleware($middleware);
* Run console hooks for plugins
* @param \Cake\Console\CommandCollection $commands The CommandCollection to use.
* @return \Cake\Console\CommandCollection
public function pluginConsole($commands);