Bestimmte Teile der Webseiten werden auf mehreren Webseiten wiederholt, jedoch an unterschiedlichen Stellen. CakePHP kann uns dabei helfen, diese wiederholten Teile wiederzuverwenden. Diese wiederverwendbaren Teile werden Elemente – Hilfebox, Extramenü usw. genannt. Ein Element ist im Grunde eine Miniansicht. Wir können Variablen auch in Elementen übergeben.
Cake\View\View::element(string $elementPath, array $data, array $options =[]
Es gibt drei Argumente für die obige Funktion wie folgt: −
Das erste Argument ist der Name der Vorlagendatei im Ordner /src/Template/element/.
Das zweite Argument ist das Datenarray, das der gerenderten Ansicht zur Verfügung gestellt werden soll.
Das dritte Argument bezieht sich auf die Auswahl an Optionen. z.B. Cache.
Von den drei Argumenten ist das erste obligatorisch, während die übrigen optional sind.
Erstellen Sie eine Elementdatei im Verzeichnis src/Template/element mit dem Namen helloworld.php. Kopieren Sie den folgenden Code in diese Datei.
<p>Hello World</p>
Erstellen Sie einen Ordner Elems unter src/Template und erstellen Sie unter diesem Verzeichnis eine View-Datei mit dem Namen index.php. Kopieren Sie den folgenden Code in diese Datei.
Element Example: <?php echo $this->element('helloworld'); ?>
Nehmen Sie Änderungen in der Datei config/routes.php vor, wie im folgenden Programm gezeigt.
<?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('/element-example',['controller'=>'Elems','action'=>'index']); $builder->fallbacks(); });
Erstellen Sie eine ElemsController.php-Datei unter src/Controller/ElemsController.php. Kopieren Sie den folgenden Code in die Controller-Datei.
<?php namespace App\Controller; use App\Controller\AppController; class ElemsController extends AppController{ public function index(){ } } ?>
Führen Sie das obige Beispiel aus, indem Sie die folgende URL besuchen: http://localhost/cakephp4/element-example
Bei der Ausführung erhalten Sie über die obige URL die folgende Ausgabe.
Das obige ist der detaillierte Inhalt vonCakePHP-Ansichtselemente. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!