CakePHP - 生成URL

这是CakePHP的一个很酷的功能.使用生成的URL,我们可以轻松更改应用程序中URL的结构,而无需修改整个代码.

 
 url(string | array | null $ url null,boolean $ full false)

上面的函数将带两个参数 :

  • 第一个参数是一个数组,指定以下任何一个和减号; 'controller','action','plugin'.此外,您还可以提供路由元素或查询字符串参数.如果是string,则可以为其指定任何有效的url字符串.

  • 如果为true,则完整的基本URL将被添加到结果中.默认值为false.

示例

config/routes中进行更改. php 文件,如以下程序所示.

config/routes.php

<?php
   use Cake\Core\Plugin;
   use Cake\Routing\RouteBuilder;
   use Cake\Routing\Router;

   Router::defaultRouteClass('DashedRoute');
   Router::scope('/', function (RouteBuilder $routes){
      $routes->connect('/generate',['controller'=>'Generates','action'=>'index']);
   });

   Plugin::routes();

src/Controller/GeneratesController.php 创建 GeneratesController.php 文件.将以下代码复制到控制器文件中.

src/Controller/GeneratesController.php

<?php
   namespace App\Controller;
   use App\Controller\AppController;
   use Cake\ORM\TableRegistry;
   use Cake\Datasource\ConnectionManager;

   class GeneratesController extends AppController{
      public function index(){
      }
   }
?>

创建一个文件夹在src/Template 生成,并在该文件夹下创建一个名为 View 的文件b> index.ctp 的.将以下代码复制到该文件中.

src/Template/Generates/index.ctp

This is CakePHP tutorial and this is an example of Generating URLs.

通过访问以下URL : 执行以上示例;

http://localhost:85/CakePHP/generate

上面的URL将产生以下输出 :

生成网址