⊗ppPmSDFl 437 of 447 menu

Движок на датотеки во PHP

Ќе имплементираме движок на веб-сајт кој ќе ни овозможи да направиме датотека за шаблон, на која во зависност од URL-то ќе се поврзува различна содржина.

Нека структурата на нашата страница изгледа на следниот начин:

<!DOCTYPE html> <html> <head> <title>title</title> </head> <body> <header> header </header> <main> content </main> <header> footer </header> </body> </html>

Дадеме на тоа место, во кое треба да се случи вметнување на содржината, да вметнеме некоја намислена од нас команда за вметнување, на пример ваква: {{ content }}. Да го измениме шаблонот на нашиот сајт:

<!DOCTYPE html> <html> <head> <title>title</title> </head> <body> <header> header </header> <main> {{ content }} </main> <header> footer </header> </body> </html>

Сега да направиме папка view, во која ќе сместуваме датотеки со содржина. Директно во оваа папка или во подпапки.

Првата датотека ќе биде ваква:

<div> content 1 </div>

Втората датотека ќе биде ваква:

<div> content 2 </div>

Третата датотека ќе биде ваква:

<div> content 3 </div>

Сега да направиме така што според URL-то од адресната лента да се вчита соодветната датотека. Во нашиот случај, на URL-то /page1 ќе биде првата датотека, на URL-то /dir/page2 - втората, и на URL-то /dir/sub/page3 - третата.

Да почнеме со имплементација. За почеток во датотеката .htaccess да направиме така што сите побарани адреси, освен датотеките со ресурси, да бидат редиректирани кон страницата index.php:

RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} !\.(js|css|ico|jpg|png|gif)$ RewriteRule .+ index.php

На страницата index.php ќе го добиеме во променлива побараното URL:

<?php $url = $_SERVER['REQUEST_URI']; ?>

Потоа ќе го добиеме текстот од датотеката со шаблонот:

<?php $layout = file_get_contents('layout.php'); ?>

Сега според URL-то ќе добиеме од папката view соодветна датотека со содржина:

<?php $content = file_get_contents('view' . $url . '.php'); ?>

Во текстот на шаблонот ќе ја замениме намислената од нас команда со добиената од датотеката содржина:

<?php $layout = str_replace('{{ content }}', $content, $layout); ?>

Ќе го испечатиме во прелистувачот датотеката со шаблонот со вметнатата содржина:

<?php echo $layout; ?>

Ќе собереме сè заедно и ќе го добиеме следниот код:

<?php $url = $_SERVER['REQUEST_URI']; $layout = file_get_contents('layout.php'); $content = file_get_contents('view' . $url . '.php'); $layout = str_replace('{{ content }}', $content, $layout); echo $layout; ?>

Имплементирајте го опишаниот движок на датотеки.

Македонски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј