انتقل إلى محتوى الدرس

Front Controller Pattern in index.php نمط نقطة الدخول الموحدة Front Controller

نظّم مشروع تطبيق ويب احترافي في PHP 8 بفصل مجلد public عن الكود المصدري وإدارة إعدادات البيئة وبناء موجه مركزي للروابط.
1 صفوف تعليمية
PHP
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

بدلاً من تعريض عشرات الملفات المنفصلة مثل login.php وprofile.php، يوجّه نمط الموجه الأمامي (Front Controller) كل الطلبات عبر نقطة دخول موحدة public/index.php.

  • يوحّد بدء الجلسة، ورؤوس الأمان، ومعالجة الأخطاء، والتحميل التلقائي للكلاسات في ملف واحد.
  • يمكن تشغيله محلياً بأمر الخادم المدمج: php -S 127.0.0.1:8000 -t public.
  • يقضي تماماً على تكرار أكواد التهيئة في بداية كل صفحة.

يحصل كل طلب تلقائياً على رؤوس الحماية والوصول للجلسة قبل بدء مطابقة المسار.

PHP
<?php
// Bootstrap lifecycle inside public/index.php
session_start();
header('X-Frame-Options: SAMEORIGIN');
header('X-Content-Type-Options: nosniff');

$uri = $_SERVER['REQUEST_URI'] ?? '/dashboard';
echo "Front Controller initialized for: $uri\n";