PHP – درج فایل‌ها (Include Files)

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

در PHP، دستور include (یا require) برای درج محتوای یک فایل به فایل دیگر استفاده می‌شود. این کار باعث می‌شود که کد/متن/مارکاپ موجود در فایل مشخص شده به فایل استفاده‌کننده وارد شود.

تفاوت بین include و require

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

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

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

درج فایل‌ها باعث صرفه‌جویی در کار می‌شود. این بدان معناست که می‌توانید یک فایل استاندارد برای هدر، فوتر، یا منو برای تمام صفحات وب خود ایجاد کنید و سپس وقتی هدر نیاز به به‌روزرسانی داشته باشد، تنها کافی است فایل هدر را به‌روزرسانی کنید.

سینتکس (Syntax)

include 'filename';
یا
require 'filename';

مثال‌های درج فایل در PHP

مثال 1

فرض کنید یک فایل فوتر استاندارد به نام “footer.php” داریم که به شکل زیر است:

<?php
echo "<p>Copyright &copy; 1999-" . date("Y") . " W3Schools.com</p>";
?>

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

مثال

<html>
<body>
<h1>Welcome to my home page!</h1>
<p>Some text.</p>
<p>Some more text.</p>
<?php include 'footer.php';?>
</body>
</html>

مثال 2

فرض کنید یک فایل منو استاندارد به نام “menu.php” داریم:

<?php
echo '<a href="/default.asp">Home</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 استایل‌دهی شود):

مثال

<html>
<body>
<div class="menu">
<?php include 'menu.php';?>
</div>
<h1>Welcome to my home page!</h1>
<p>Some text.</p>
<p>Some more text.</p>
</body>
</html>

مثال 3

فرض کنید یک فایل به نام “vars.php” داریم که شامل برخی متغیرها تعریف شده است:

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

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

مثال

<html>
<body>
<h1>Welcome to my home page!</h1>
<?php include 'vars.php';
echo "I have a $color $car.";
?>
</body>
</html>

تفاوت بین include و require

دستور require نیز برای درج یک فایل به کد PHP استفاده می‌شود.

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

مثال

<html>
<body>
<h1>Welcome to my home page!</h1>
<?php include 'noFileExists.php';
echo "I have a $color $car.";
?>
</body>
</html>

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

مثال

<html>
<body>
<h1>Welcome to my home page!</h1>
<?php require 'noFileExists.php';
echo "I have a $color $car.";
?>
</body>
</html>

پست های مرتبط

مطالعه این پست ها رو از دست ندین!
JavaScript - تاریخ‌ها (Dates)

JavaScript – تاریخ‌ها (Dates)

آبجکت‌های تاریخ (Date) در جاوااسکریپت آبجکت‌های تاریخ در جاوااسکریپت به ما امکان کار با تاریخ و زمان را می‌دهند....

بیشتر بخوانید
JavaScript - آرایه‌های ثابت (Array Const)

JavaScript – آرایه‌های ثابت (Array Const)

جاوااسکریپت: تعریف آرایه با const در سال 2015، جاوااسکریپت کلمه کلیدی مهمی به نام const را معرفی کرد. این...

بیشتر بخوانید
JavaScript - تکرار آرایه‌ها (Array Iteration)

JavaScript – تکرار آرایه‌ها (Array Iteration)

جاوا اسکریپت: تکرار بر روی آرایه‌ها جاوا اسکریپت روش‌های مختلفی برای تکرار (Iteration) بر روی آرایه‌ها ارائه می‌دهد که...

بیشتر بخوانید

نظرات

سوالات و نظراتتون رو با ما به اشتراک بذارید

برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید.