فایل‌های Include در PHP

از ویکی‌کد
پرش به ناوبری پرش به جستجو
Main Page Tutorial
Php-menu.png
موارد آموزشی
فرم‌ها در PHP
PHP پیشرفته
۱تاریخ و زمان
۲دستور Include
۳مدیریت فایل
۴باز کردن/خواندن فایل
۵ساختن/نوشتن فایل
۶آپلود فایل
۷کوکی‌ها
۸Sessions
۹فیلترها
۱۰فیلترهای پیشرفته
۱۱JSON در PHP
شیء گرایی در PHP
پایگاه داده MySQL
XML در PHP
AJAX در PHP
مثال‌های PHP
مرجع PHP

دستور include (یا require) تمامی متن‌ها/کدها/علامت‌ها که درون فایل مشخصی است را برداشته و درون فایلی که دستور include در آن استفاده شده‌است کپی می‌کند. [۱]

ضمیمه‌کردن فایل‌ها هنگامی که شما می‌خواهید مقداری کد PHP ,HTML یا متن را روی تعداد صفحات متعدی از یک وب‌سایت include کند بسیار کاربردی است.

دستورات include و require در PHP

وارد کردن محتوای یک فایل PHP درون یک فایل PHP دیگر (قبل از آنکه سرور آن را اجرا کند)، بوسیله دستورات include یا require امکان‌پذیر است.

دستورات include و require شبیه به هم هستند، اما در صورت عدم موفقیت در اجرا، با هم تفاوت دارند:

  • دستور requireدر صورت عدم موفقیت یک خطای (fatal error یا E_COMPILE_ERROR) تولید می‌کند و اجرای اسکریپت را متوقف می‌کند
  • دستور include تنها یک هشدار (E_WARNING) ایجاد خواهد کرد و اجرای اسکریپت ادامه میابد

بنابراین، اگر شما می‌خواهید که اجرا ادامه یابد و به کاربران حتی در صورتی که فایل include در دسترس نباشد، درخروجی مقداری چاپ کنید، از دستور include استفاده کنید. در غیراین‌صورت، در مورد فریم وورک، CMS، یا نرم‌افزارهای پیچیده PHP، همیشه از دستور require برای اضافه کردن یک فایل کلیدی به جریان اجرای برنامه استفاده کنید. این امر به جلوگیری از در خطر‌افتادن امنیت و درستی نرم‌افزار شما، فقط در صورتی که فایل کلید به صورت تصادفی در دسترس نباشد، کمک خواهد کرد.

Include کردن فایل‌ها موجب صرفه‌جویی در بسیاری از کارها می‌شود. این بدان معناست که شما یک سربرگ (به انگلیسی: Header)، یک footer، یا منوی فایلی برای تمام صفحات وب‌سایت خود ایجاد می‌کنید. سپس، زمانی که سربرگ نیاز به بروز رسانی دارد، شما تنها فایل include سربرگ را بروزرسانی می‌کنید.

شیوه نوشتار

include 'filename';

OR

require 'filename';

مثال های include در PHP

مثال ۱

فرض بگیرید که ما یک footer استاندارد به نام "footer.php" داریم، که به صورت زیر است:

<?php
echo "<p>Copyright &copy; 2019-" . date("Y") . " Wikicod.ir</p>";
?>

برای include کردن فایل footer در یک صفحه، از دستور include استفاده کنید:

مثال

 1 <html>
 2 <body>
 3 
 4 <h1>Welcome to my home page!</h1>
 5 <p>Some text.</p>
 6 <p>Some more text.</p>
 7 <?php include 'footer.php';?>
 8 
 9 </body>
10 </html>


مشاهدهٔ نتیجه


مثال ۲

فرض بگیرید که ما یک منوی استاندارد به نام "menu.php" داریم:

<?php
echo '<a href="/default.asp">خانه</a> -
<a href="/html/default.asp">HTML Tutorial</a> -
<a href="/css/default.asp">CSS Tutorial</a> -
<a href="/js/default.asp">JavaScript Tutorial</a> -
<a href="default.asp">PHP Tutorial</a>';
?>

تمامی صفحات در وب‌سایت می‌بایست از این فایل منو استفاده کنند. این نحوه‌ای است که می‌بایست این کار صورت بگیرد (ما از یک عنصر <div> استفاده می کنیم بنابراین منو را می‌توان به راحتی به وسیله CSS در آینده طرح بندی کرد):

مثال

 1 <html>
 2 <body>
 3 
 4 <div class="menu">
 5 <?php include 'menu.php';?>
 6 </div>
 7 
 8 <h1>Welcome to my home page!</h1>
 9 <p>Some text.</p>
10 <p>Some more text.</p>
11 
12 </body>
13 </html>


مشاهدهٔ نتیجه


مثال ۳

فرض بگیرید که ما فایلی به نام "vars.php" داریم، با تعدادی متغیر تعریف شده:

<?php
$color='red';
$car='BMW';
?>

سپس، اگر ما فایل "vars.php" را include کنیم، متغیرها را می‌توان در فایل فراخوانی شده استفاده کرد:

مثال

 1 <html>
 2 <body>
 3 
 4 <h1>Welcome to my home page!</h1>
 5 <?php include 'vars.php';
 6 echo "I have a $color $car.";
 7 ?>
 8 
 9 </body>
10 </html>


مشاهدهٔ نتیجه


دستورات include در برابر require در PHP

دستور require را همچنین می‌توان برای include کردن یک فایل درون کد PHP استفاده کرد.

اما، یک تفاوت بزرگ بین include و require وجود دارد؛ زمانی که یک فایل به وسیله دستور include به فایل اضافه می‌شود و PHP نمی‌تواند آن فایل را پیدا کنید، اجرای اسکریپت ادامه می‌یابد:

مثال

 1 <html>
 2 <body>
 3 
 4 <h1>Welcome to my home page!</h1>
 5 <?php include 'noFileExists.php';
 6 echo "I have a $color $car.";
 7 ?>
 8 
 9 </body>
10 </html>


مشاهدهٔ نتیجه


اگر ما مثال مشابه ای را با استفاده از دستور require انجام دهیم، دستور echo اجرا خواهد نشد زیرا که اجرای اسکریپت بعد از اینکه دستور require یک خطای fatal را برگرداند متوقف می‌شود:

مثال

 1 <html>
 2 <body>
 3 
 4 <h1>Welcome to my home page!</h1>
 5 <?php require 'noFileExists.php';
 6 echo "I have a $color $car.";
 7 ?>
 8 
 9 </body>
10 </html>


مشاهدهٔ نتیجه

از دستور require زمانی استفاده کنید که فایل توسط نرم‌افزار مورد نیاز است.

از دستور include زمانی که فایل مورد نیاز نیست و نرم‌افزار می‌بایست زمانی که فایل پیدا نشد اجرا را ادامه دهد، استفاده کنید.

تمرینات PHP

Time2wait.svg ساخت نمونه مثال این بخش در دست اقدام است.



منابع آموزشی