Comment

PHP ফাইলস অর্গানাইজিং (Organizing PHP files)

PHP ইনক্লোড ওয়ান্স (include_once)

Estimated reading: 2 minutes 7 views Contributors

সারাংশ: এই টিউটোরিয়ালে, আপনি শিখবেন কিভাবে PHP include_once construct ব্যবহার করে একটি ফাইল একবার include করতে হয়।

PHP ইনক্লোড ওয়ান্স কন্সট্রাক্ট-এর পরিচিতি:-

include টিউটোরিয়ালে, আপনি include কনস্ট্রাক্ট ব্যবহার করে অন্য ফাইল থেকে কোড লোড করতে শিখেছেন।

কখনও কখনও, আপনার কাছে একটি ফাইল থাকতে পারে যা একাধিকবার ইনক্লোড করা হয়েছে।

যদি ইনক্লোড ফাইলে একটি ফাংশন থাকে তবে আপনি একটি ফাটাল এ্যারর পাবেন কারণ ফাংশন ইতিমধ্যেই প্রথম লোডে ঘোষনা করা হয়েছে।

উদাহরণ স্বরূপ:

ধরুন আপনার কাছে নিম্নলিখিত প্রজেক্ট ডিরেক্টরি রয়েছে:

.
├── inc
│   └── functions.php
└── index.php

functions.php-এর dd() ফাংশনের নির্ধারণ করা রয়েছে:

<?php

function dd($data)
{
	echo '<pre>';
	var_dump($data);
	echo '</pre>';
	die();
}

এবং index.php ফাইলে, আপনি functions.php ফাইলটি দুইবার ইনক্লোড করেন:

<?php

include 'inc/functions.php';
include 'inc/functions.php';

আপনি index.php ফাইলটি রান করলে PHP নিম্নলিখিত এ্যারর দেখাবে :

Fatal error: Cannot redeclare dd() (previously declared in .\inc\functions.php:3) in .\inc\functions.php on line 3

একইভাবে, যদি ইনক্লোডেড ফাইল কিছু HTML উপাদান আউটপুট করে, তাহলে আপনি তাকে পেজ -এ আরও একবার দেখতে পাবেন। এটি কীভাবে হয় তা দেখতে, inc ডিরেক্টরিতে দুটি নতুন ফাইল header.php এবং footer.php তৈরি করা যাক:

header.php

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<title>PHP include_once</title>
	</head>
	<body>

footer.php

</body>
</html>

index.php ফাইলে, আপনি যদি header.php ফাইলটি দুইবার ইনক্লোড করেন, তাহলে আপনি দেখতে পাবেন যে পেজ এ দুটি হেডার থাকবে:

<?php include 'inc/header.php' ?>
<?php include 'inc/header.php' ?>

<h1>PHP include_once Demo</h1>


<?php include 'inc/footer.php' ?>

একটি ফাইল একাধিকবার অন্তর্ভুক্ত করা এড়াতে, আপনি include_once স্টেটমেন্ট ব্যবহার করতে পারেন:

include_once 'path_to_file';

 include_once টি  ইনক্লোড স্টেটমেন্ট-এর মতো আচরন করে, যদি ফাইলটি পুনরায় অন্তর্ভুক্ত করা হয়, তাহলে  include_once ফাইলটি লোড করবে না এবং  true দেখাবে।

সহজ কথায়, ফাইল যতবারই অন্তর্ভুক্ত করা হোক না কেন, Include_once ফাইলকে একবার লোড করে।

উপরের উদাহরণে, আপনি include_once কন্সট্রাক্ট ব্যবহার করলে, স্ক্রিপ্টটি সঠিকভাবে কাজ করবে:

<?php include_once 'inc/header.php' ?>
<?php include_once 'inc/header.php' ?>

<h1>PHP include_once Demo</h1>

<?php include_once 'inc/footer.php' ?>

PHP ইনক্লোড ওয়ান্স কন্সট্রাক্ট কেন ব্যাবহার করবেন;-

মনে করেন, আপনার কাছে  index.php নামে একটি ফাইল আছে যেটি অন্য দুটি ফাইল লোড করে ,

  • Logger.php
  • Database.php

Database.php  ফাইল  Logger.php ফাইলও লোড করে। এই ক্ষেত্রে,  Logger.php ফাইল দুইবার ব্যবহার করা হয়, একবার Database.php  ফাইলে এবং আরেকটি  index.php-এ।

এই ক্ষেত্রে, Logger.php ফাইলটি সঠিকভাবে কাজ করার জন্য আপনাকে include_once  কন্সট্রাক্ট ব্যবহার করতে হবে।

সারসংক্ষেপ

  • একটি ফাইল একবার লোড করতে PHP include_once স্টেটমেন্ট ব্যবহার করুন।

Leave a Comment

Share this Doc

PHP ইনক্লোড ওয়ান্স (include_once)

Or copy link

CONTENTS

Subscribe

×
Cancel