Banyak kali, semasa membuat halaman web, kami ingin mengulang bahagian tertentu halaman dalam halaman lain. CakePHP mempunyai kemudahan sedemikian di mana seseorang boleh memanjangkan paparan dalam paparan lain dan untuk ini, kita tidak perlu mengulangi kod itu lagi.
Kaedah extend() digunakan untuk melanjutkan paparan dalam fail View. Kaedah ini mengambil satu hujah, iaitu, nama fail paparan dengan laluan. Jangan gunakan sambungan .ctp semasa memberikan nama fail Lihat.
Buat perubahan dalam fail config/routes.php seperti yang ditunjukkan dalam program berikut.
<?php use Cake\Http\Middleware\CsrfProtectionMiddleware; use Cake\Routing\Route\DashedRoute; use Cake\Routing\RouteBuilder; $routes->setRouteClass(DashedRoute::class); $routes->scope('/', function (RouteBuilder $builder) { $builder->registerMiddleware('csrf', new CsrfProtectionMiddleware([ 'httpOnly' => true, ])); $builder->applyMiddleware('csrf'); $builder->connect('extend',['controller'=>'Extends','action'=>'index']); $builder->fallbacks(); });
Buat fail ExtendsController.php di src/Controller/ExtendsController.php. Salin kod berikut dalam fail pengawal.
<?php namespace App\Controller; use App\Controller\AppController; class ExtendsController extends AppController{ public function index(){ } } ?>
Buat direktori Melanjutkan di src/Template dan di bawah folder itu buat fail View yang dipanggil header.php. Salin kod berikut dalam fail itu.
<div align="center"> <h1>Common Header</h1> </div> <?= $this->fetch('content') ?>
Buat Paparan lain di bawah Melanjutkan direktori yang dipanggil index.php. Salin kod berikut dalam fail itu. Di sini, kami memanjangkan paparan di atas header.php.
<?php $this->extend('header'); ?> This is an example of extending view.
Laksanakan contoh di atas dengan melawati URL berikut http://localhost/cakephp4/extend
Setelah pelaksanaan, anda akan menerima output berikut.
Atas ialah kandungan terperinci CakePHP Memanjangkan Pandangan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!