در ادامه مطلب همراه ما باشید
آموزش PHP – دستور include
درج کردن یک فایل PHP در یک فایل PHP دیگر
شما می توانید با استفاده از دو تابع include یا require محتویات یک فایل PHP را داخل یک فایل PHP دیگر درج کنید، البته قبل از اینکه فایل دوم اجرا شود.
این دو تابع در همه موارد یکسان عمل می کنند، بجز در چگونگی برخورد با خطا:
. include: پیغام خطا را تولید می کند، اما ادامه اسکریبت اجرا خواهد شد.
. require: پیغام خطا را تولید می کند و اجرای اسکریبت متوقف خواهد شد.
موارد استفاده دو تابع include و require می تواند شامل موارد زیر باشد:
. توابع
. Header
. Footer
المانهایی که در چندین صفحه استفاده می شود مانند منوها، کامپوننت تاریخ و …
شما می توانید یک فایل استاندارد Header یا Footer و یا منو ایجاد کنید و در همه صفحات پروژه تان از آنها استفاده کنید، و موقعی که نیاز به تغییر داشت، تنها با تغییر یک فایل، کل پروژه تان را تازه سازی کنید.
دستور include_once و require_once:
دو تابع بالا دقیقاً مثل include و require عمل می کنند، با این تفاوت که اگر فایل مورد نظر قبلاً خوانده شده است، دیگر خوانده نمی شود.مثال ۱:
فرض کنید یک فایل Header با نام “header.php” دارید، برای اضافه کردن آن به صفحه ای از پروژه از کد زیر استفاده کنید:
<html> <?php include(“header.php”); ?> </body> |
دستورات include, include_once, require و require_once را می توان بدون پرانتز نیز بکار برد.
مثال ۲:
فرض کنید یک فایل منو طبق زیر با نام “menu.php” داریم، که باید به تمام صفحات پروژه اضافه شود:
<a href=”/default.php”>Home</a> |
در زیر فایل “menu.php” را به صفحه دلخواهمان اضافه کرده ایم:
<html> <div class=”leftmenu”> <h1>Welcome to my home page.</h1> </body> |
اگر بعد از اجرای فایل بالا در IE ، روی صفحه راست کلیک کرده و View Source را کلیک کنید، کد html شبیه زیر خواهیم داشت:
<html> <div class”leftmenu”> <h1>Welcome to my home page!</h1> </body> |
مثال ۳: خطا در تابع include:
در مثال زیر فایل wrongFile.php وجود ندارد و همان طور که مشاهده می کنید بعد از چاپ پیغام خطا ادامه اسکریبت اجرا می شود.
<html> <?php </body> |
پیغام خطا:
Warning: include(wrongFile.php) [function.include]: Warning: include() [function.include]: Hello World! |
مثال ۴:پیغام خطا در تابع require:
<html> <?php </body> |
پیغام خطا:
Warning: require(wrongFile.php) [function.require]: Fatal error: require() [function.require]: |
بعد از ایجاد خطا، ادامه اجرای اسکریبت متوقف می شود، و در حقیقت خطی که قرار است Hello World را چاپ کند، اجرا نمی شود.
پیشنهاد می شود از تابع require بجای include استفاده شود، چون اسکریبت ها بعد از برخورد با خطا نباید ادامه پیدا کنند.