تضمين ملفات PHP
تأخذ العبارة include
(أو require
) كل النص / الكود / العلامات الموجودة في الملف المحدد وتنسخها في الملف الذي يستخدم عبارة التضمين.
يعد تضمين الملفات مفيدًا جدًا عندما تريد تضمين نفس PHP أو HTML أو نص على صفحات متعددة من موقع ويب.
تتضمن PHP وتتطلب البيانات
من الممكن إدراج محتوى ملف PHP واحد في ملف PHP آخر (قبل أن ينفذه الخادم) ، مع عبارة include أو تتطلب.
تكون عبارات التضمين والمطلوب متطابقة ، إلا عند الفشل:
require
سينتج خطأ فادح (E_COMPILE_ERROR) وسيوقف البرنامج النصيinclude
سوف ينتج فقط تحذيرًا (E_WARNING) وسيستمر البرنامج النصي
لذلك ، إذا كنت تريد استمرار التنفيذ وإظهار المخرجات للمستخدمين ، حتى إذا كان ملف التضمين مفقودًا ، فاستخدم عبارة include. بخلاف ذلك ، في حالة FrameWork أو CMS أو ترميز تطبيق PHP معقد ، استخدم دائمًا العبارة المطلوبة لتضمين ملف مفتاح لتدفق التنفيذ. سيساعد هذا في تجنب المساس بأمان وسلامة التطبيق الخاص بك ، فقط في حالة فقد ملف مفتاح واحد عن طريق الخطأ.
تضمين الملفات يوفر الكثير من العمل. هذا يعني أنه يمكنك إنشاء رأس أو تذييل أو ملف قائمة قياسي لجميع صفحات الويب الخاصة بك. بعد ذلك ، عندما يحتاج الرأس إلى التحديث ، يمكنك فقط تحديث ملف تضمين الرأس.
بناء الجملة
include 'filename';
or
require 'filename';
تتضمن PHP أمثلة
مثال 1
افترض أن لدينا ملف تذييل قياسي يسمى "footer.php" ، يبدو كالتالي:
<?php
echo "<p>Copyright © 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>
تتضمن PHP مقابل تتطلب
تُستخدم require
العبارة أيضًا لتضمين ملف في كود PHP.
ومع ذلك ، هناك فرق واحد كبير بين تضمين وطلب ؛ عندما يتم تضمين ملف في 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 لأن تنفيذ البرنامج النصي يموت بعد أن
require
أعادت العبارة خطأ فادحًا:
مثال
<html>
<body>
<h1>Welcome to my home page!</h1>
<?php require 'noFileExists.php';
echo "I have a $color $car.";
?>
</body>
</html>
استخدم require
عندما يطلب التطبيق الملف.
استخدمه include
عندما لا يكون الملف مطلوبًا ويجب أن يستمر التطبيق في حالة عدم العثور على الملف.