⊗ppPmSDFl 437 of 447 menu

Файлҳо асосёфта муҳаррик дар PHP

Муҳаррики вебсайтро амалӣ мекунем, ки ба мо имкон медиҳад, ки файли шаблонеро созем, ки ба вобастагии аз URL муҳтавои гуногун ба он васл карда шавад.

Бигзор сохтори саҳифаи мо ба таври зерин намоён гардад:

<!DOCTYPE html> <html> <head> <title>унвон</title> </head> <body> <header> header </header> <main> content </main> <header> footer </header> </body> </html>

Биёед дар ҷое, ки бояд гузориши муҳтаво сурат гирад, як фармони ихтироъкардаи худро барои гузориш гузорем, масалан чунин: {{ content }}. Шаблони сайти худро тағйир медиҳем:

<!DOCTYPE html> <html> <head> <title>унвон</title> </head> <body> <header> header </header> <main> {{ content }} </main> <header> footer </header> </body> </html>

Акнун папкаи view-ро месозем, ки ба он файлҳои муҳтаво ҷойгир карда мешаванд. Акнун дар ин папка ё дар зерпапкаҳо.

Файли аввал чунин хоҳад буд:

<div> муҳтавои 1 </div>

Файли дуюм чунин хоҳад буд:

<div> муҳтавои 2 </div>

Файли сеюм чунин хоҳад буд:

<div> муҳтавои 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 истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан