⊗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 боюнча туура файл тартылып алынсын. Биздин учурда /page1 урлу боюнча биринчи файл, /dir/page2 урлу боюнча экинчи, жана /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šuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Биз сайттин иштөөсү, аналитика жана персонализация үчүн cookie файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу