دستورات include و require در PHP
در این بخش به بررسی دستورات include و require در PHP می پردازیم.
دستور include یا require تمام متن ها یا کد های موجود در یک فایل را گرفته و سپس در یک فایلی دیگر اضافه می کند.
استفاده از این دستورات زمانی مفید و کاربردی هست که بخواهیم یک فایل را در چندین فایل دیگر استفاده و کپی کنیم.
عبارات include و require در PHP
توجه داشته باشید که این امکان وجود دارد که محتوای یک فایل PHP را در یک فایل PHP دیگر ( قبل از اجرای سرور ) با عبارات include و require وارد کنید.
دستورات include و require تقریباً یکسان هستند اما یکسری تفاوت ها دارند:
- دستور
require
در PHP ، صورت عدم وجود فایل مشخص شده ، یک خطای مرگبار ( E_COMPILE_ERROR ) ایجاد می کند و اسکریپت را متوقف می کند. - همچنین دستور
include
در PHP تنها یک هشدار ( E_WARNING ) ایجاد می کند و روند اجرای اسکریپت ادامه پیدا می کند.
به بیانی ساده تر اگر میخواهید در صورت عدم وجود فایل ، اسکریپت متوقف نشود و روند اجرای آن همراه با یک خطای ساده ادامه پیدا بکند از عبارت include استفاده کنید در غیر این صورت از require استفاده کنید.
نحوه استفاده
include 'نام فایل';
یا
require 'نام فایل';
مثال include در PHP
فرض کنید یک فایل پاورقی استاندارد با نام “footer.php” داریم که به شکل زیر است:
فایل footer.php
برای اضافه کردن فایل پاورقی در یک صفحه از عبارت include استفاده می کنیم:
مثال
فرض کنید یک فایل منوی استاندارد با نام “menu.php” داریم:
فایل menu.php
تمام صفحات وب سایت دارای منو می باشند و از این فایل در تمام صفحات استفاده خواهیم کرد. در اینجا محتوای فایل “menu.php” را داخل تگ <div> قرار دادیم تا بعداً به آن سبک های CSS اضافه کنیم:
مثال
فرض کنید فایلی با نام “vars.php” داریم که چندین متغیر در آن تعریف شده است:
<?php
$color='red';
$car='BMW';
?>
سپس اگر فایل “vars.php” را به یک صفحه اضافه کنیم، می توان از متغیر ها در آن فایل استفاده کرد:
مقایسه دستورات include و require در PHP
از دستور require
در PHP همانند دستور include
برای اضافه کردن یک فایل در کد PHP یا فایل دیگر استفاده می شود.
با توجه به همه این موارد اما تفاوتی بین این دو دستور وجود دارد:
در مطالب بالا به این موضوع اشاره شد ، اگر دستور require فایل مشخص شده را پیدا نکند برنامه با خطا مواجه شده و روند اجرای اسکریپت متوقف خواهد شد در صورتی که دستور include مانع متوقف شدن اسکریپت نمی شود و تنها یک خطا را چاپ خواهد کرد.
مثال
اگر همین فایلی که وجود ندارد را با دستور require فراخوانی کنیم ، کد های بعد از آن مانند echo اجرا نخواهند شد و به طور کل روند اجرای اسکریپت همراه با یک پیغام خطای مهلک متوقف خواهد شد.
زمانی که یک فایل بسیار مهم و مورد نیاز برنامه هست از تابع require
استفاده کنید.
زمانی که فایل مورد نیاز برنامه نیست یا اهمیت چندانی ندارد و در صورت بروز هرگونه مشکل روند اجرای اسکریپت باید ادامه پیدا کند از تابع include
استفاده کنید.
دستور require_once و include_once در PHP
توابع require
و include
قابلیت این را دارند که یک فایل را چندین بار در یک فایل PHP دیگر فراخوانی و اجرا کنند ولی توابع require_once
و include_once
تنها یک بار فایل را اضافه و فراخوانی می کنند و در صورتی که فایل های مشخص شده قبلاً فراخوانی شده باشند از اضافه کردن و اجرای مجدد یا تکراری آنها جلوگیری می کند.
آیا این مطلب برای شما مفید بود ؟