PHP code example of eberfreitas / cakephp-power-router
1. Go to this page and download the library: Download eberfreitas/cakephp-power-router library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
eberfreitas / cakephp-power-router example snippets
CakePlugin::load('PowerRouter');
App::uses('PowerRoute', 'PowerRouter.Lib');
Router::connect(
'/path',
array('controller' => 'pages', 'action' => 'view'),
array(
'routeClass' => 'PowerRoute',
'routeName' => 'main-path',
'callback' => $callback,
'condition' => $condition
)
);
App::uses('PowerRouter', 'PowerRouter.Lib');
PowerRouter::connect(
'main-path',
'/path'
array('controller' => 'pages', 'action' => 'view'),
array(
'callback' => $callback,
'condition' => $condition
)
);
PowerRouter::connect($name, $route, $defaults = array(), $options = array()) { /*...*/ }
PowerRouter::connect(
'about',
'/about-us',
array('controller' => 'pages', 'action' => 'display', 'about')
);
echo $this->Html->link('About us', array('routeName' => 'about'));
// In your routes.php
PowerRouter::connect(
'product-view',
'/product/:slug/:id',
array('controller' => 'products', 'action' => 'view')
);
// In your views
echo $this->Html->link(
$product['Product']['title'],
array(
'routeName' => 'product-view',
'slug' => $product['Product']['slug'],
'id' => $product['Product']['id']
)
);
// routes.php
$transformRoute = function ($params) {
$params['action'] = 'dash_' . $params['action'];
return $params;
};
PowerRouter::connect(
'route',
'/dashboard/:controller/:action/*',
array(),
array('callback' => $transformRoute)
);
$condition = function () {
return Configure::read('route') === true;
};
$routes = PowerRouter::connect(
'test',
'/findamatch',
array(
'controller' => 'main',
'action' => 'view'
), array(
'condition' => $condition
)
);