CakePHP erweitert Ansichten

WBOY
Freigeben: 2024-09-10 17:25:28
Original
912 Leute haben es durchsucht

Bei der Erstellung von Webseiten möchten wir oft bestimmte Teile von Seiten auf anderen Seiten wiederholen. CakePHP verfügt über eine solche Funktion, mit der man die Ansicht in eine andere Ansicht erweitern kann, und dafür müssen wir den Code nicht noch einmal wiederholen.

Die Methode extend() wird verwendet, um Ansichten in der Datei View zu erweitern. Diese Methode benötigt ein Argument, nämlich den Namen der Ansichtsdatei mit Pfad. Verwenden Sie nicht die Erweiterung .ctp, während Sie den Namen der Ansichtsdatei angeben.

Beispiel

Nehmen Sie Änderungen in der Datei config/routes.php vor, wie im folgenden Programm gezeigt.

config/routes.php

<?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();
});
Nach dem Login kopieren

Erstellen Sie eine ExtendsController.php-Datei unter src/Controller/ExtendsController.php. Kopieren Sie den folgenden Code in die Controller-Datei.

src/Controller/ExtendsController.php

<?php
   namespace App\Controller;
   use App\Controller\AppController;
   class ExtendsController extends AppController{
      public function index(){
      }
   }
?>
Nach dem Login kopieren

Erstellen Sie ein Verzeichnis Extends unter src/Template und erstellen Sie unter diesem Ordner eine View-Datei mit dem Namen header.php. Kopieren Sie den folgenden Code in diese Datei.

src/Template/Extends/header.php

<div align="center">
   <h1>Common Header</h1>
</div>
<?= $this->fetch('content') ?>
Nach dem Login kopieren

Erstellen Sie eine weitere Ansicht im Verzeichnis Extends mit dem Namen index.php. Kopieren Sie den folgenden Code in diese Datei. Hier erweitern wir die obige Ansicht header.php.

src/Template/Extends/index.php

<?php $this->extend('header'); ?>
This is an example of extending view.
Nach dem Login kopieren

Führen Sie das obige Beispiel aus, indem Sie die folgende URL besuchen: http://localhost/cakephp4/extend

Ausgabe

Bei der Ausführung erhalten Sie die folgende Ausgabe.

Common Header

Das obige ist der detaillierte Inhalt vonCakePHP erweitert Ansichten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage