⊗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 URL-এ প্রথম ফাইলটি হবে, /dir/page2 URL-এ - দ্বিতীয়টি, এবং /dir/sub/page3 URL-এ - তৃতীয়টি।

বাস্তবায়ন শুরু করি। প্রথমে .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
আমরা সাইট পরিচালনা, বিশ্লেষণ এবং ব্যক্তিগতকরণের জন্য কুকি ব্যবহার করি। ডেটা প্রক্রিয়াকরণ গোপনীয়তা নীতি অনুযায়ী করা হয়।
সব গ্রহণ করুন কনফিগার করুন প্রত্যাখ্যান করুন