পরিচিতি
include স্টেটমেন্টের মতোই include_once`ও এক ফাইলে লেখা স্ক্রিপ্ট অন্য ফাইলে ট্রান্সফার ও ইভ্যালুয়েট করে, পার্থক্য হলো include_once একই ফাইল পুনঃরিলোড হয়ে যাওয়া থেকে বাধা দেয় যদি ইতিমধ্যে করা থাকে। নামটিই ইঙ্গিত দিচ্ছে, এক ফাইল শুধু একবার ইনক্লুড হবে যদি কেউ আবার ইনক্লুড ইনস্ট্রাকশন ইস্যু করে।
include_once স্টেটমেন্ট সাধারণত গ্লোবাল ভেরিয়েবল সেটআপ, লাইব্রেরি ইমবেল বা যেকোনো ऐसी এক্টিভিটির জন্য ব্যবহার করা হয় যেটি অ্যাপ্লিকেশন এক্সিকিউশনের শুরুতেই করা এক্সপেক্টেড।
এছাড়া include_once স্টেটমেন্টের আচরণ include স্টেটমেন্টের মতোই।
include_once উদাহরণ
নিচের উদাহরণে testscript.php` আপ্যাচি সার্ভারের ডকুমেন্ট রুট ফোল্ডারে রয়েছে। এটি include_once স্টেটমেন্ট দিয়ে test.php ইনসার্ট করে—
উদাহরণ
<?php echo "calling include_once statement\n"; $result=include_once "test.php"; ?> // test.php <?php echo "This file is included once\n"; ?>
আউটপুট
ব্রাউজারে testscript.php এর URL দিলে নিচের ফলাফল—
calling include_once statement This file is included once
ফেলড include এর ওয়ার্নিং
যদি include_once স্টেটমেন্টের ফাইল আর্গুমেন্ট না পাওয়া যায়, তবে পার্সার ওয়ার্নিং এমিট করে।
উদাহরণ
<?php echo "inside main script<br />"; $var1=100; echo "now calling nosuchfile.php script"; include_once "nosuchfile.php"; echo "returns from nosuchfile.php"; ?>
আউটপুট
নিচের ফলাফল। নোট করুন প্রোগ্রাম ওয়ার্নিংয়ের পরেও টার্মিনেট হয়নি—
inside main script now calling nosuchfile.php script PHP Warning: include_once(nosuchfile.php): failed to open stream: No such file or directory in line 5 PHP Warning: include_once(): Failed opening 'nosuchfile.php' for inclusion (include_path='C:\xampp\php\PEAR') in line 5 returns from nosuchfile.php
include_once আবার কল করা
পরবর্তী উদাহরণে test.php` include_once স্টেটমেন্ট দিয়ে ইনক্লুড করা হয়েছে। নোট করুন একই ফাইল আবার ইনক্লুড হয়নি—
উদাহরণ
// মেইন স্ক্রিপ্ট <?php echo "inside main script<br>"; echo "now including test.php script<br>"; include_once "test.php"; echo "now including again test.php script<br>"; ?> // test.php (ইনক্লুডেড) <?php echo "This file is included once"; ?>
আউটপুট
ব্রাউজারে নিচের ফলাফল—
inside main script<br />now including test.php script<br /> This file is included once now including again test.php script