فایلهای Include در PHP
شامل سمت سرور (SSI) برای ایجاد توابع، سربرگها، پاورقیها یا عناصر قابل استفاده در چندین صفحه استفاده میشود.
عبارتهای include (یا require) تمام متنها/کدها/تگهای موجود در فایل مشخص شده را دریافت میکنند و آنها را به فایلهایی که از عبارت include استفاده کردهاند، کپی میکنند.
شامل فایلها مفید هستند، اگر نیاز دارید تا PHP، HTML یا متن مشابهی را در چندین صفحه از وبسایت خود استفاده کنید.
عبارتهای include و require در PHP
با استفاده از عبارتهای include یا require، میتوان محتوای یک فایل PHP را به یک فایل PHP دیگر اضافه کرد (قبل از اینکه سرور آن را اجرا کند).
عبارتهای include و require مشابه هستند، اما در زمینه مدیریت خطاها تفاوت دارند:
- require خطای حیاتی (E_COMPILE_ERROR) تولید میکند و اسکریپت متوقف میشود
- include فقط هشدارها (E_WARNING) تولید میکند و اسکریپت ادامه میدهد
بنابراین، اگر میخواهید ادامه دهید و به کاربران نتایج را ارائه دهید، حتی اگر فایل شامل گم شده باشد، از include استفاده کنید. در غیر این صورت، در قالبها، CMS یا برنامهنویسی پیچیده PHP، همیشه از require برای ارجاع به فایلهای کلیدی در جریان اجرا استفاده کنید. این کار به افزایش امنیت و یکپارچگی برنامه کمک میکند، به ویژه در صورت گم شدن یک فایل کلیدی.
شامل کردن فایلها بسیاری از کارها را سادهتر میکند. این به این معناست که میتوانید برای همه صفحات یک سربرگ، پایش یا منوی استاندارد ایجاد کنید. سپس، زمانی که سربرگ نیاز به بهروزرسانی دارد، شما تنها باید فایل شامل سربرگ را بهروزرسانی کنید.
نحوهی نوشتن
include 'filename';
یا
require 'filename';
مثال include PHP
مثال 1
فرض کنید یک فایل استاندارد پایش به نام "footer.php" داریم، مانند این:
<?php echo "<p>کپی رایت © 2006-" . date("Y") . " codew3c.com</p>"; ?>
برای استفاده از این فایل پایش در یک صفحه، از دستور include استفاده کنید:
<html> <body> <h1>به خانه ما خوش آمدید!</h1> <p>نصی.</p> <p>نصی.</p> <?php include 'footer.php';?> </body> </html>
مثال 2
فرض کنید یک فایل استاندارد منو به نام "menu.php" داریم:
<?php echo '<a href="/index.asp">خانه</a> - <a href="/html/index.asp">آموزش HTML</a> - <a href="/css/index.asp">آموزش CSS</a> - <a href="/js/index.asp">آموزش JavaScript</a> - <a href="/php/index.asp">آموزش PHP</a>'; ?>
تمام صفحات وبسایت از این فایل منو استفاده میکنند. عملکرد خاص آن این است (ما از یک عنصر <div> استفاده کردهایم، بنابراین در آینده میتوان به راحتی با استفاده از CSS استایلدهی کرد):
<html> <body> <div class="menu"> <?php include 'menu.php';?> </div> <h1>Welcome to my homepage!</h1> <p>نص.</p> <p>نص بیشتر.</p> </body> </html>
مثال 3
فرض کنید یک فایل به نام "vars.php" داریم که در آن برخی از متغیرها تعریف شدهاند:
<?php $color='Silver'; $car='Benz car'; ?>
Then, if we reference this "vars.php" file, we can use these variables in the calling file:
<html> <body> <h1>Welcome to my homepage!</h1> <?php include 'vars.php'; echo "I have a" . $color . $car . "."; ?> </body> </html>
PHP include vs. require
The require statement is also used to reference files into PHP code.
However, there is a huge difference between include and require: if a file is referenced with an include statement and PHP cannot find it, the script will continue to execute:
Example
<html> <body> <h1>Welcome to my home page!</h1> <?php include 'noFileExists.php'; echo "I have a $color $car."; ?> </body> </html>
If we use the require statement to complete the same case, the echo statement will not continue to execute, because the script will terminate after the severe error returned by the require statement:
Example
<html> <body> <h1>Welcome to my home page!</h1> <?php require 'noFileExists.php'; echo "I have a $color $car."; ?> </body> </html>
Note:
Use require here: When the file is requested by the application.
Use include here: When the file is not necessary, and the application should continue running when the file is not found.