"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > أنماط تصميم PHP: وحدة تحكم الصفحة

أنماط تصميم PHP: وحدة تحكم الصفحة

تم النشر بتاريخ 2024-12-22
تصفح:762

PHP Design Patterns: Page Controller

يعد نمط التصميم وحدة تحكم الصفحة أسلوبًا معماريًا شائعًا يستخدم في الأنظمة المستندة إلى الويب. ينظم تدفق التحكم من خلال تخصيص وحدة تحكم محددة للتعامل مع المنطق الخاص بصفحة أو طلب فردي. يساعد هذا الأسلوب في عزل المسؤوليات، مما يجعل صيانة قاعدة البيانات وتطويرها أسهل.

ما هو مراقب الصفحة؟

في نمط وحدة تحكم الصفحة، يكون لكل صفحة (أو مجموعة من الصفحات ذات السلوك المماثل) وحدة تحكم خاصة بها، مسؤولة عن:

  1. التعامل مع الطلب: معالجة البيانات المرسلة من العميل.
  2. تنفيذ المنطق الخاص بالصفحة: التحقق من صحة المدخلات، أو التفاعل مع النماذج، أو إجراء العمليات الحسابية.
  3. تقديم الاستجابة: تمرير البيانات المعالجة إلى عرض (قالب) وإرجاع الاستجابة النهائية إلى العميل.

مزايا النموذج

  1. تدفق بسيط: يتم تعيين كل صفحة إلى وحدة التحكم المخصصة الخاصة بها.
  2. فصل الاهتمامات: كل وحدة تحكم تتعامل مع المنطق الخاص بها فقط.
  3. قابلية الصيانة: تؤثر التغييرات التي يتم إجراؤها على صفحة واحدة فقط على وحدة التحكم المرتبطة بها.
  4. قابلية التوسع: تعد إضافة صفحات جديدة أمرًا سهلاً ولا يؤدي إلى تعطيل الوظائف الحالية.

الهيكل الأساسي

يتضمن التنفيذ النموذجي المكونات التالية:

  • وحدات التحكم: ملفات PHP تحتوي على منطق لصفحات محددة.
  • الطرق: آلية توجيه لتعيين عناوين URL لوحدات التحكم.
  • المشاهدات: القوالب المستخدمة لعرض واجهة المستخدم.

تدفق

  1. يرسل العميل طلبًا إلى عنوان URL محدد.
  2. يحدد نظام التوجيه وحدة التحكم المناسبة للطلب.
  3. تقوم وحدة التحكم بتنفيذ المنطق المطلوب وتفويض عرض الاستجابة إلى العرض.
  4. يقوم العرض بإنشاء الإخراج النهائي وإعادته إلى العميل.

مثال التنفيذ

بنية الملف

/htdocs
    /src
        /Controllers
            HomeController.php
            AboutController.php
        /Services
            ViewRenderer.php
        /Views
            home.html.php
            about.html.php
    /public
        index.php
    /routes.php
    composer.json

أداة التحميل التلقائي

{
    "autoload": {
        "psr-4": {
            "App\\": "htdocs/"
        }
    }
}
composer dump-autoload

نموذج

نموذج للصفحة الرئيسية وabout.html.php.

= htmlspecialchars($title) ?> الرأس>

= htmlspecialchars($title) ?>

= htmlspecialchars($content) ?>

الجسم>
بيان الافراج تم إعادة نشر هذه المقالة على: https://dev.to/xxzeroxx/php-design-patterns-page-controller-34f2?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3