Phpslides هو إطار PHP مصمم بشكل أساسي لقوالب الأساس التي تم إنشاؤها بالفعل المستخدمة في إنشاء Router و Api database management ؟
استخدم phpslides في إنشاء جهاز توجيه مضمون للغاية ، API وقاعدة البيانات ، تم إنشاء قاعدة بيانات قالب في ثناياه عوامل تقبل - يمكن أيضًا إعداد قاعدة بيانات MySql & Sqlite .
إنه بشكل افتراضي في منع حقن SQL ، ويمنع المشروع من هجمات XXS و CSRF؟
إنها ممارسة جيدة للمبتدئين في PHP للبدء بـ phpslides
مع Phpslides ، يتم إعادة توجيه جميع الطلبات القادمة من الخادم إلى Phpslides لتوجيه VERIFING. ويتحقق مما إذا كان الطلب يطابق الطرق المسجلة ، وإلا فإنه يعيد صفحة 404 غير موجودة؟
لا يمكن لأي طلب الوصول إلى أي ملفات أو مجلدات في مشروع phpslides ما لم يتم تحديدها في التوجيه؟
بشكل افتراضي ، لا يتم العثور على صفحة 404 غير موجودة إذا كانت تتنقل إلى أي ملفات أو مجلدات أو أي طلبات تم استلامها إذا لم يتم تسجيلها؟
تريد زيارة ملف مباشرة؟ سيتم تكوينه في ملف Config Slides ، ولكن لا يمكن الوصول إلى الملفات إلا في الدليل العام في حالة تحديد؟.
يمكنك أيضًا تحديد أنواع الملفات للوصول ، أو تحديد ملحقات معينة يمكن طلبها من كل مجلدات في الدليل العام أو جميع المجلدات؟
إنه يقبل جميع أنواع الملفات أو الصور أو مقاطع الفيديو أو الصوت أو المستندات أو النصوص العادية؟
قراءة الرموز الافتراضية phpslides وفهم كل وظيفة رموز ، والرموز أنيقة وقابلة للقراءة؟
أولاً ، نقوم بإنشاء مشروع Slides الخاص بنا من خلال تنفيذ هذا الأمر في المحطة الخاصة بك إذا تم تثبيت الملحن بالفعل.
composer create-project dconco/php_slides slide_project حيث slide_project هو اسم المشروع الذي تقوم بإنشائه وهو دليل المشروع. وسيقوم بإنشاء المشروع بالاسم المحدد في الدليل الهدف حيث تقوم بتثبيته
إذا لم يتم تثبيت الملحن بعد. تثبيته عن طريق التنفيذ:
pkg install composerونحن جميعا مستقلين.
سنفتح مشروعنا على VSCODE أو PHPSTORM أو أي محررين آخرين PHP.
لنبدأ مشروعنا على المتصفح ، يمكنك إعداد وبدء خادم Apache في XAMPP أو أي خادم PHP آخر. إذا كنت تستخدم الهاتف ، فيمكنك استخدام Awebserver لخادم PHP. وافتح المضيف في متصفحك ، سترى قالبًا افتراضيًا.
هناك طرق مختلفة لطريق الطلب. يتم استخدام طرق المسار هذه طلب استلام من جانب العميل
افتح ملف routes/route.php في المحرر الخاص بك. افتح مجلد routes ، ملف route.php . بشكل افتراضي ، سترى مسار لوحة القيادة تم تسجيله ، يمكنك إزالته للبدء من نقطة الصفر.
دعنا ننشئ شرائح مدونة بسيطة كمثال. لذلك سنقوم بتسجيل طرقنا ، سنحتاج إلى Login Page Register Profile Posts Page . دعنا نقوم بتسجيل طرق PUR في ملف route.php وكتابة مثال:
<?php
include_once dirname ( __DIR__ ) . " /vendor/autoload.php " ;
use PhpSlides Route ;
use PhpSlides view ;
Route:: config ();
Route:: view ( " /login " , " ::Login " );
?>تم شرح هذا المثال أعلاه:
أولاً ، قمنا باستيراد ملف التحميل التلقائي الخاص بنا من دليل البائع حتى نتمكن من استخدام جميع أسماء الفصول الدراسية لدينا.
مع use PhpSlidesRoute نستخدمه في استيراد فئة الطريق الخاصة بنا للاستخدام.
يجب تحديد وظيفة Route::config في بداية رموزنا. إنه يجعل Phpslides تكوين طرق موقعنا ويجعله مضمونًا للغاية مما يسمح بالوصول إلى تكوين التوجيه والمسارات المطلوبة.
تأخذ وظيفة Route::config معلمة منطقية واحدة تشير إلى ما إذا كان سيتم السماح لطلب السجلات. بشكل افتراضي ، تم تعيينه إلى True. لذلك بناءً على كل طلب ، يكتب معلومات رأس الطلب إلى ملف .log .
وتتيح لك وظيفة Route::view إنشاء مسار عرض.
المعلمات التي تم تمريرها إليها ، ستكون اثنتين ، المعلمة الأولى تحدد المسار الذي يجب أن يطلب تقديم المعلمة الثانية.
تقوم المعلمات الثانية بتقديم الملفات في دليل العرض الذي يمكن الوصول إليه مع :: ( مزدوج القولون ) واسم الملف. يجب أن تكون أي ملفات نقوم بإنشائها في دليل العرض في fileName.view.php والتي هو fileName هو اسم ملف العرض و .view.php هو امتداد الملف ، لذلك ستلاحظ Phpslides أنه ملف عرض.
لذلك ، دعنا ننشئ ملفًا جديدًا يسمى Login.view.php حيث قمنا بتسجيله في المسار. ثم يمكننا كتابة مثال صغير HTML.
<html>
<head>
<title>Login Page</title>
</head>
<body>
<h2>Login Page</h2>
<input type="email" name="emai" />
<input type="password" name="password" />
<button type="submit">Login</button>
</body>
</html>مثال على طريقة الحصول على الطريق
<?php
use PhpSlides Route ;
use PhpSlides view ;
Route:: config ();
Route:: get ( " /login " , Route:: view ( " ::Login " ));
?> ترى الفرق بين العرض والوصول إلى الطريق. في عرض المسار ، لا تحتاج إلى الحصول على ملف العرض باستخدام Route::view ، يمكنك كتابة العرض كسلسلة في المعلمة الثانية.
ولكن في طريق الحصول على الطريق ، تأخذ المعلمات الثانية التي يتم استخدامها كدالة رد الاتصال أي أنواع من التعليمات البرمجية. على سبيل المثال ، سلاسل ، صفيف ، وظيفة. لأنه يعيدها مباشرة إلى جانب العميل. مع Get Routes ، يجب أن تكون طريقة طلب عنوان URL المعين لاستلامها طلبًا ، بحيث جميع طرق الطرق.
احصل على الطريق مع طريقة وظيفة الإغلاق
Route:: get ( " /login " , function () {
return Route:: view ( " ::Login " );
});يقوم بإرجاع صفحة عرض تسجيل الدخول ، يمكننا إرجاع أي قيم PHP إلى المتصفح.
تحتوي جميع طرق الطرق على معلمات ثانية كدالة رد اتصال تأخذ طرق الوظيفة أو أي طرق أخرى.
احصل على طريقة الطريق مع معلمات URL مع الإغلاق
Route:: get ( " /posts/{id} " , function ( int $ id ) {
return " Posts ID = " . $ id
});هذا المثال أعلاه يسجل مسارًا جديدًا مع طلب /منشورات يتلقى طلبًا مع معلمات إغلاق الوظيفة من المعرف. إذا كان الطلب/المنشورات/2 ، فسيتم إرجاع "معرف المنشورات = 2" ، فإنه يحصل على قيمة المعرف وأرسله إلى جانب العميل/المتصفح.
مثال على طريقة ما بعد الطريق
<?php
use PhpSlides Route ;
use PhpSlides view ;
Route:: config ();
Route::post( " /add_user " , ());
?>إنه يستدعي طريقة النشر ، ويشير إلى أنه لا يمكن تنفيذ وظيفة Post Route إلا إذا كان request_method هو طلب نشر. ويمكن استخدامها في مثل إرسال بيانات النموذج.
المعلمات الثانية فارغة ، ويمكنها إرجاع تنسيق JSON ، لأن طريقة النشر عادة ما تستخدم في إرسال طلب منشور يرجع البيانات بتنسيقات JSON ، يمكن أن تحتوي المعلمات الثانية على أي تنسيقات لوظيفة رد الاتصال
هذه هي الطريقة التي تكون بها طريقة مسار الراحة.
مثال على طريقة المسار وضع
Route::put( " /user " , ());تشبه طريقة PUT طلب POST ، في إضافة معلومات أو بيانات إلى ملف أو قاعدة بيانات معينة.
مثال على طريقة تحديث طريق المسار
Route::update( " /user/{id} " , ());عادة ما يتم استخدام طريقة التحديث في تحديث المعلومات كما في قاعدة البيانات.
مثال على طريقة حذف طريق
Route::delete( " /user/{id} " , ());عادة ما يتم استخدام طريقة الحذف على الأرجح في حذف المعلومات في قاعدة البيانات.
مثال على أي طريقة مسار
Route::any( " /user/{id} " , ()); مع Route::any() يمكن استخدام طريقة إذا كنت ترغب في قبول جميع أنواع الطلبات. يمكن أن تكون إما نشر أو الحصول على أو وضع أو تحديث أو حذف ، اعتمادًا على طريقة المسار المطلوبة.
مثال على طريقة مسار Notfound
Route:: any ( " * " , Route:: view ( " ::errors::404 " )); في هذا المثال أعلاه ، أنشأنا أي مسار ونجعل المعلمة الأولى لتكون * تشير إلى العودة كلما لم تكن هناك طرق تتطابق مع عنوان URL المطلوب.
يجب أن يكون المسار المتجه في نهاية الطرق المسجلة ، بحيث يمكن تنفيذه عندما تكون جميع الطرق المذكورة أعلاه غير متطابقة.
وفي المعلمة الثانية ، نتنقل view المجلد وأنشأنا مجلد يدعى errors داخل دليل view ، ثم إنشاء صفحة تسمى 404.view.php
يمكنك إنشاء عنوان URL متعدد الطرق الذي ستقدم صفحة أو وظيفة.
إنشاء عناوين URL متعددة مع صفيف وقائمة عناوين URL فيه. يمكن استخدام أي طرق الطريق.
ملاحظة: لا يمكنك استخدام عناوين URL متعددة عند استخدام معلمات المسارات مع أقواس {}
Route:: view ([ " / " , " /index " , " /dashboard " ], " ::dashboard " ); يوضح هذا المثال أنه كلما يتطابق عنوان URL المطلوب مع عناوين URL المحددة في المصفوفة ، فإنه يجعل dashboard.view.php القيادة. جميع طرق المسار تقبل عنوان URL المتعدد. يمكن أيضًا إنشاء عنوان URL المتعدد لصفحة 404.
يتيح لك PhpSlides أن تكون قادرًا على الوصول إلى مفاتيح معلمات الطريق في وحدة التحكم في الفصل.
يمكنك استخدام أي طرق مسار لتوجيه وحدة التحكم باستثناء طريقة العرض. دعنا نذهب مع طريقة الحصول على.
نقوم بإنشاء مكوننا البسيط للصف في دليل Controller في الدليل الجذر لمشروعك.
ينتقل إلى دليل Controller وإنشاء اسم وحدة تحكم من اختيارك ولكن يجب أن يكون في هذا التنسيق ClassName + Controller.php الذي يجب أن يكون ClassNameController.php .
لذلك دعونا ننشئ وحدة تحكم جديدة تسمى UserController.php . دعنا ننتقل إلى الملف الذي تم إنشاؤه وكتابة بعض الرموز فيه.
<?php
namespace PhpSlides Controller ;
final class UserController extends Controller
{
public function __invoke ( int $ id ) {
return " <h2>Get User with ID = { $ id } </h2> " ;
}
}
?> في هذا المثال أعلاه ، أنشأنا ملفًا بعنوان UserController.php في مجلد /controller .
وقمنا بإنشاء مساحة اسم لوحدة التحكم في الفصل والتي سيتم استخدامها في استدعاء الفصل. أنشأنا الفصل المسمى UserController ويمتده إلى فئة Controller ، مما يتيح لك الوصول إلى بعض الوظائف المحمية.
تأكد بعد كل مكونات فئة تم إنشاؤها والتي تحتوي على مساحة اسم ، يجب عليك تشغيل هذا الأمر أدناه للتحميل التلقائي لكل فئة.
composer slides-refreshتصف الكلمات الرئيسية النهائية في الفصل أن الفصل يجب أن يكون نهائيًا ولا يمكن تمديده إلى فئة أخرى ، يمكنك إزالته إذا تم تمديد الفصل.
وننشئ وظيفتنا العامة التي تسمى __invoke والتي تحصل على معلمة الإغلاق في الطريق ، وسيتم استخدامها للحصول على معلمات URL وإرجاع قيمة وظيفة رد الاتصال. لذلك يحصل على معلمات ID $ الإغلاق ، ويصفها بأنها عدد صحيح باستخدام int قبل اسم param.
دعنا نقوم بتسجيل طرق المستخدم ونجعلها تسير في الطريق ، ويمكن أن تجعله أي نوع من طلبات المسار اعتمادًا على الاستخدام.
<?php
use PhpSlides Route ;
use PhpSlides Controller UserController ;
Route:: config ();
Route:: get ( " /user/{id} " , [ UserController::class ]);
?> في هذا المثال أعلاه ، أنشأنا بالفعل فصلًا يسمى UserController ، وقمنا بإنشاء طريقة الحصول على طريق تحتوي على معلمة id URL.
ثم نقدم فئة UserController ، والتي تم إرسال معلمة id إلى فئة UserController مع وظيفة __invoke .
في وحدة التحكم في الفصل الدراسي ، يمكننا أيضًا إنشاء طرق متعددة لطلب مسار مختلف.
<?php
final class UserController extends Controller
{
public function __invoke () {
return " <h2>Invoked User Successful. Receieved all users successfully.</h2> " ;
}
public function User ( $ id ) {
return " <h2>Received an ID - $ id for a user.</h2> " ;
}
}
?> في UserController أنشأنا طريقة أخرى تسمى User() والتي تأخذ معلمة واحدة كمعرف $id لمعلمة طلب url id .
لذلك دعونا نستخدم طريقة فئة User() في المسار.
Route:: get ( " /user " , [ UserController::class ]);
Route:: get ( " /user/{id} " , [ UserController::class, ' User ' ]);في الوظيفة الأولى ، لا تحتوي على معلمة عنوان URL ، لأننا في هذه الحالة نعيد جميع المستخدمين المتاحين ، وليس كل مستخدم.
وقمنا بإنشاء الوظيفة الثانية كـ /user/{id} ، وهذا يعني أننا قمنا بتمرير معلمة url id إلى طريقة مسار User() .
لاستخدام طريقة User() عن طريق تمرير اسم الطريقة الذي يكون User كسلسلة في صفيف وحدة التحكم في المسار ، في الفهرس الثاني من المصفوفة ، لا يمكن إلا أن تأخذ قيمتين صفيف.
يمكن إضافة أكبر عدد ممكن من الطرق ، والعديد من معلمات URL.
مثال أدناه لإنشاء معلمات URL متعددة:
Route:: get ( " /user/{id}/post/{post_id} " , function ( $ user_id , $ post_id )
{
return " User ID = $ user_id & Post ID = $ post_id " ;
}); يحتوي على معلمتان url يسمى id و post_id لمعرف المستخدم ومعرف النشر ، ثم نحصل على معلمات عنوان URL في معلمة دالة الإغلاق. نفس الشيء مثل طريقة وحدة تحكم الطريق.
ولكن تأكد من أن متغير معلمات إغلاق الوظيفة لا يمكن أن يكون هو نفسه ، فقد يتحول إلى الصراع ، ولكن قد تكون معلمات عنوان URL هي نفسها.
تكوينات في Phpslides ، تجعلك تتمتع بوصول كامل في تكوين طريقة الطلب/استلام الطلب في التوجيهات. ويمكن إعداد تكوينات التوجيه في ملف phpslides.config.json .
بشكل افتراضي في كل مكان في الويب ، سيكون فارغًا على الرغم من أنها تتنقل إلى أي صفحات. لذلك يتم استخدام توجيه الويب لإضافة صفحات إلى الويب إذا اتبعوا أي روابط ، فسيقوم بإرجاع الصفحة لعنوان URL. وإذا Not Found page setupped ، فسيتم استخدامها كلما لم تكن الصفحة موجودة.
افتراضيًا إذا قاموا بفتح أي عناوين URL على أي مسار للصفحة ، فستكون الويب فارغة ما لم يتم إضافتها إلى Not Found page حتى ستعيدها ، لأنه لجعل موقع الويب الخاص بك مضمونًا ، يمكنهم الوصول إلى الجزء الذي تريد الوصول إليه فقط.
وتسهل التكوينات في phpslides السماح لك بتكوين الجزء الذي يمكن للمستخدم عرضه ، لإنشاء موقع ويب مضمون للغاية .. لأنه يمكنهم فقط عرض أي ملفات في المجلد العام ، ولكن لا يمكنهم عرض المجلدات هناك بصرف النظر عن التوجيه.
_ مثال على التكوين في phpslides
افتح phpslides.config.json في الدليل الجذر لمشروعك.
{
"charset" : " UTF-8 "
}هذا المثال أعلاه يحدد charsets المراد استخدامها في إرجاع جميع الملفات وصفحات التوجيه إلى brower. ولكن يمكن تغييره في أي وقت باستخدام رمز PHP ، إذا كنت تريد تغيير جزء ما.
{
"public" : {
"/" : [ " * " ]
}
} أضفنا مفتاحًا public في ملف JSON ، والذي يحدد أنه داخل الدليل public والملفات والملفات المتداخلة في المجلدات التي يمكنه الوصول إليها
أضفنا / المفتاح الذي يحدد جذر الدليل public . لذلك أضفناها * (النجمة) . الذي يحدد للوصول إلى جميع الملفات في جذر الدليل public . ويمكننا تحديد أي نوع من الامتدادات التي يمكنهم الوصول إليها ، على الرغم من وجود الملف ويحاول الوصول إلى الملف الذي لا يتوفر امتداده في التكوين cconfiguration ، إلا أنه سيعيد Not Found page . يمكنهم كتابة extesnsions متعددة في الصفيف. ويمكنهم أيضًا كتابة image حيث يمكنهم الوصول إلى جميع الصور أو video أو audio .
"/" : [ " image " , " audio " , " video " ] على كل مجلدات متداخلة داخل الدليل public سيتم تحديدها كمجموعة من الامتدادات في ملف التكوين. وإذا كنت ترغب في السماح لجميع المجلدات المتداخلة ، فسوف تحدد فقط المجلد في ملف JSON والتمديد الذي يمكن أن يسمح به في جميع الدلائل المتداخلة.
مثل دعنا نقول أن الدلائل في هذه الأشكال:
public:
assets:
image.jpg
file.pdf
vendor:
bootstrap.min.js
images:
image.png
image1.jpg
file.html
لذلك تم شرح هذا المثال: في الدليل public لدينا مجلد assets images . لذلك في مجلد assets لدينا صورة واحدة ، 1 ملف PDF ومجلد vendor واحد يحتوي على bootstrap.min.js . لذلك إذا أردنا تكوينه ::
{
"public" : {
"assets" : [ " jpg " , " js " ],
"images" : [ " image " , " video " ]
}
} في هذا المثال ، قمنا بإنشاء تكوينات فقط لدليل assets images ، لذلك ستستخدم جميع الملفات والمجلدات في دليل assets الإضافات المضافة في دليل assets والتي تحدد أنه في هذا المثال ، سيتم السماح بملحق js المحدد أيضًا في مجلد vendor ، أو نضيف مفتاح vendor إلى ملف JSON.
لذا ، حيث نقوم بتكوين دليل assets ، يمكنهم فقط الوصول إلى ملف jpg وملف js في مجلد vendor .
بالنسبة لدليل images ، حددنا أنه لا يمكنه الوصول إلى أي image أو video فقط ، لذلك يتيح للملفتين هناك وهما صفحة png & jpg وإرجاعها Not Found page كلما حاولت الوصول إلى file.html الذي لم يتم إضافته.
لعرض جميع الملفات الموجودة في الدليل public مع الملفات في المجلدات المتداخلة. لن تضيف المجلد public قبل الحصول على الملفات ، فسيتم إرجاعه Not Found page . لذلك مثل المثال أعلاه ، للوصول إلى الملف في مجلد assets . سوف نتبع عنوان URL: http://localhost:8000/assets/image.jpg وليس http://localhost:8000/public/assets/image.jpg . وإذا كانت الملفات في الدليل الجذر للمشروع ، فسيتم الوصول إليها مباشرة بعد عنوان URL للمضيف: http://localhost:8000/image.jpg .
في هذا الإصدار ، يوفر Slides طريقة للتعامل مع صفحة العرض إنشاء ملف قالب العرض الخاص بك في دليل views ، في هذا filename fileName + .view.php . وهو fileName.view.php
أنشأت Phpslides بعض بناء جملة العرض الخاص.
<? ?>دعنا نبدأ هذا ..
<! DOCTYPE html>
<html>
<!-- Php codes if needed -->
<?
?>
<head>
<!-- Meta Tags Info -->
<title>Page Title</title>
</head>
<body>
<!-- Body contents -->
</body>
</html> في صفحة قالب عرض حيث نكتب رموز HTML ، يجب ألا تبدأ علامة PHP في الملف ، وبدلاً من ذلك اكتب علامة <?php ورموزها داخل علامة <html> أو أي أماكن أخرى بصرف النظر عن البداية ، يجب أن تبدأ دائمًا مستندات HTML مع علامة <html>
<? ?> العلامة في قالب العرض هو علامة PHP قصيرة المستخدمة في كتابة رموز PHP القصيرة. مثل استخدام IF عبارة ، أو صدى البيانات إلى صفحة HTML. مثال رموز:
<body>
<? if ( $ user ): ?>
<h1>Hello <? @view $ user ?> </h1>
<? else : ?>
<h1>Hello Guest</h1>
<? endif ; ?>
<p>
<? @view ' welcome to our blog spot! ' ?>
</p>
</body> يتم شرح هذا المثال على النحو التالي: في عنصر الجسم ، نتحقق مما إذا كان المستخدم يرجع صحيحًا ، فسيضيف عنصر h1 مع Text Hello مع قيمة متغير المستخدم الذي يتم إرجاعه باستخدام الكلمة الرئيسية View في الشرائح. وإلا فإنه سيعود وعنصر h1 مع Text Hello Guest في العلامة <p> التي كتبنا رموز PHP التي تستخدم الكلمة الرئيسية @view لإرجاع السلسلة/القيمة إلى عنصر <p> .
:: عرض و :: الجذر
The ::view مجرد كلمة مكتوبة فقط في ملفات قالب العرض التي تُرجع موقع الجذر بعد اسم الخادم في المشروع بدءًا من / . عادة ما تستخدم لربط الملفات العامة. و ::root هو إعادة موقع جذر مشروعك وليس لديه ::view ، ::root في PHP في تضمين أي ملفات للمشروع ، ولكن ::view يمكن فقط الوصول إلى ما يمكن أن يتسم به المتصفح/العميل ، ولكن لا يمكن الوصول إلى أي ملفات في المشروع عندما لا تكون في الدليل public .
الآن ، دعونا نتخيل أن لدينا صورًا سنصل إليها في الدليل العام وملف PHP إضافي ، سنحتاج إلى تضمينه في صفحة العرض.
<body>
<? include ' ::root/components/extraFile.php ' ?>
<div>
<img src="::view/assets/icon.png" alt="Icon" />
</div>
</body> في هذه الحالة ، يشار إلى جذر المشروع على النحو التالي ::root وداخل المشروع ، أنشأنا مجلد يسمى components وملف جديد يسمى extraFile.php لأي رموز PHP لتضمينها في صفحة العرض.
::view هو موقع الجذر لمضيف الخادم ، لذلك دعونا نتخيل أن عنوان URL للمضيف كـ http://localhost:8000/ لذلك يشار إلى ::view وعادة ما في الشرائح ، يتم تمديد جميع الملفات والمجلدات في الدليل public في جذر عنوان URL مثل ::view/ لا ::view/public
لذا فإن عنوان URL AS ::view/assets/icon.png في الدليل public ، أنشأ مجلد assets وصورة icon.png .
يوفر Slides طريقة لك لتضمين ملف قالب عرض آخر لصفحة عرض ، وليس فقط ملفات PHP.
2 طرق لتضمين صفحة العرض
<include !/> htmlslides_include php باستخدام علامة <include !/> html ، يمكنك تضمين صفحة PHP/View أخرى على صفحة العرض الحالية. الذي يسمح لك بكتابة قالب عرض الشرائح في ملفات أخرى لتضمينها. ويمكن أيضًا تضمين أي ملف PHP آخر يقع في أي مكان في المشروع.
< body >
< include path =" ::root/components/extraFile.php " ! />
< include path =" ::root/views/viewPage.view.php " ! />
</ body > لذلك في العلامة الأولى قمنا بتضمين ملف PHP الموجود في دليل components . والعلامة الثانية قمنا بتضمين ملف قالب العرض الموجود في دليل views . ويمكن فقط استخدام علامة <include !/> في صفحة قالب عرض.
slides_include
توفر هذه الوظيفة طريقة لتضمين ملفات العرض في أي ملف PHP وليس فقط على صفحة قالب العرض.
<? @view slides_include ( ' ::root/comp/extraFile.php ' ) ?>
<? @view slides_include ( ' ::root/views/page.view.php ' ) ?> Phpslides APIs realed in -v1.2.0 ، والتي تتيح لك العمل مع API في مشروعك. يشبه API الطريق تمامًا ولكنه يعيد البيانات إلى الطلب وليس المتصفح. توفر الشرائح وظيفة Api التي تتيح لك تسجيل مسار API. وقامت بتشغيل وحدة تحكم API في ملف web.php . قم بتسجيل مسار API الجديد في ملف routes/api.php
<?php
use PhpSlides Api ;
Api:: get ();
Api:: post ();
Api:: put ();
Api:: patch ();
Api:: update ();
Api:: delete ();
?> في مثال أعلاه كتل الكود ، نقوم بإنشاء واجهات برمجة التطبيقات وتلك هي طريقة طلب API المتوفرة في API. تأخذ وظيفة Api فقط 2 معلمات ، عنوان URL API Route والمعلمة الثانية هي طريقة فئة التحكم.
لاحظ أنه قبل أن تتمكن من إنشاء API ، تأكد من تعيين وظيفة Route::config() في ملف route.php على الرغم من أنك لا تستخدم طريق الويب.
دعنا نقوم بإنشاء واجهة برمجة تطبيقات لطريق الطلب المحدد "/api/users" مع طريقة نشر من شأنها أن تعرض قائمة المستخدمين المتاحين في قاعدة بيانات. وإنشاء مسار آخر "/api/users/{id}" أيضًا طريقة نشر من شأنها أن تعرض مستخدمًا معينًا بواسطة المعرف المحدد.
<?php
use PhpSlides Api ;
Api:: post ( " /api/users " );
Api:: post ( " /api/users/{id} " , @user);
?> لذلك في واجهة برمجة التطبيقات الأولى ، لم نقدم معلمة ثانية للطريقة لاستخدامها بشكل افتراضي هي طريقة __invoke . وفي الثانية ، نستخدم @user الذي يعلن طريقة user لفئة وحدة التحكم نفسها. @ الهدف اسم طريقة فئة وحدة التحكم.
دعنا أولاً إنشاء فئة وحدة التحكم الخاصة بنا في دليل Controller/Api . دعنا نسميها UserController . في أسماء وحدة التحكم الخاصة بنا ، يجب أن تنهي Controller ملف ، الذي يصف ملف وحدة تحكم.
<?php
namespace PhpSlides Controller ;
final class UserController extends Controller
{
function __invoke () {
$ response = [ ' data ' => ' We have gotten all users id successful ' ];
return json_encode ( $ response );
}
function user ( int $ id ) {
$ response = [ ' data ' => ' The particular user id = $id ' ];
return json_encode ( $ response );
}
}
?> في فئة UserController أنشأنا الطريقتين الوظيفيين ونعيد تنسيق JSON المشفر.
لم يتم ذلك بعد .. نحن بحاجة إلى تسجيل كل عنوان URL Routes Routes لفئة وحدة التحكم في ملف src/web.php .
<?php
use PhpSlides Controller UserController ;
return [
' /api/users ' => UserController::class,
' /api/users/{id} ' => UserController::class
];
?>لقد قمنا بإعادة مسارات API للتسجيل الآن API جاهزة للاستهلاك ❤؟.
يا هلا كما تستمتع باستخدام phpslides !!!
المزيد من الوظائف قادمة في الإصدارات التالية