include کردن فایل در PHP

چاپ

درج کردن یک فایل PHP در یک فایل PHP دیگر

Wiki

شما می توانید با استفاده از دو تابع include یا require محتویات یک فایل PHP را داخل یک فایل PHP دیگر درج کنید، البته قبل از اینکه فایل دوم اجرا شود.

این دو تابع در همه موارد یکسان عمل می کنند، بجز در چگونگی برخورد با خطا:

موارد استفاده دو تابع include و require می تواند شامل موارد زیر باشد:

شما می توانید یک فایل استاندارد Header یا Footer و یا منو ایجاد کنید و در همه صفحات پروژه تان از آنها استفاده کنید، و موقعی که نیاز به تغییر داشت، تنها با تغییر یک فایل، کل پروژه تان را تازه سازی کنید.

دستور include_once و  require_once:
دو تابع بالا دقیقاً مثل include و require عمل می کنند، با این تفاوت که اگر فایل مورد نظر قبلاً خوانده شده است، دیگر خوانده نمی شود.


مثال 1:

فرض کنید یک فایل Header با نام "header.php" دارید، برای اضافه کردن آن  به صفحه ای از پروژه از کد زیر استفاده کنید:

<html>
<body>

<?php include("header.php"); ?>
<h1>Welcome to my home page!</h1>
<p>Some text.</p>

</body>
</html>

دستورات include, include_once, require و require_once را می توان بدون پرانتز نیز بکار برد.


مثال 2:

فرض کنید یک فایل منو طبق زیر با نام "menu.php" داریم، که باید به تمام صفحات پروژه اضافه شود:

<a href="/default.php">Home</a>
<a href="/tutorials.php">Tutorials</a>
<a href="/references.php">References</a>
<a href="/examples.php">Examples</a>
<a href="/about.php">About Us</a>
<a href="/contact.php">Contact Us</a>

در زیر فایل "menu.php" را به صفحه دلخواهمان اضافه کرده ایم:

<html>
<body>

<div class="leftmenu">
<?php include("menu.php"); ?>
</div>

<h1>Welcome to my home page.</h1>
<p>Some text.</p>

</body>
</html>

اگر بعد از اجرای فایل بالا در  IE ، روی صفحه راست کلیک کرده و View Source را کلیک کنید، کد html شبیه زیر خواهیم داشت:

<html>
<body>

<div class"leftmenu">
<a href="/default.php">Home</a>
<a href="/tutorials.php">Tutorials</a>
<a href="/references.php">References</a>
<a href="/examples.php">Examples</a>
<a href="/about.php">About Us</a>
<a href="/contact.php">Contact Us</a>
</div>

<h1>Welcome to my home page!</h1>
<p>Some text.</p>

</body>
</html>


مثال 3: خطا در تابع include:

Wiki

در مثال زیر فایل wrongFile.php وجود ندارد و همان طور که مشاهده می کنید بعد از چاپ پیغام خطا ادامه اسکریپت اجرا می شود.

<html>
<body>

<?php
include("wrongFile.php");
echo "Hello World!";
?>

</body>
</html>

پیغام خطا:

Warning: include(wrongFile.php) [function.include]:
failed to open stream:
No such file or directory in C:\home\website\test.php on line 5

Warning: include() [function.include]:
Failed opening 'wrongFile.php' for inclusion
(include_path='.;C:\php5\pear')
in C:\home\website\test.php on line 5

Hello World!


مثال 4:پیغام خطا در تابع require:

Wiki

<html>
<body>

<?php
require("wrongFile.php");
echo "Hello World!";
?>

</body>
</html>

پیغام خطا:

Warning: require(wrongFile.php) [function.require]:
failed to open stream:
No such file or directory in C:\home\website\test.php on line 5

Fatal error: require() [function.require]:
Failed opening required 'wrongFile.php'
(include_path='.;C:\php5\pear')
in C:\home\website\test.php on line 5

بعد از ایجاد خطا، ادامه اجرای اسکریپتمتوقف می شود، و در حقیقت خطی که قرار است Hello World را چاپ کند، اجرا نمی شود.

 پیشنهاد می شود از تابع require بجای include استفاده شود، چون اسکریپت ها بعد از برخورد با خطا نباید ادامه پیدا کنند.

برای مشاهده فیلم ها و آموزش های پروژه محور برنامه نویسی PHP کلیک کنید.