5.3. اساسيات عملية التحويل
السابق | فصل 5. Zend_Controller_RewriteRouter | التالي

## 5.3. اساسيات عملية التحويل

قلب الـ RewriteRouter هو إنشاء معرفات تحويل "routes" من قِبل المستخدم, يتم إنشاء الـ routes عن طريق إستدعاء الـ method المسمى addRoute الخاص بـ RewriteRouter :

    $router->addRoute('user', 'user/:username');

البراميتر الأول هو إسم الـ route , فى وقت كتابة هذه الكلمات لا يوجد إستخدام لهذا الأسم , و لكن فى المستقبل سيتم إستخدامه فى اداة "URL view helper" مساعدة لإنشاء URLs بسهولة فى الـ view . إن كنت تحتاج إلى إستخدام routes قد قمت بتسجيلها مسبقاً, يمكنك إستعادتها عن طريق الـ method المسمى getRoute الموجود فى RewriteRouter.

البراميتر الثانى عبارة عن route "معرف تحويل" و الذى سيتم مطابقته بالـ URL - على سبيل المثال, الـ route المذكور بالأعلى سيتوافق مع `http://example.com/user/martel`. النقطة المزدوجة ":" فى الـ route توضح ان هذا متغير URL و الذى يمكن الوصول إليه من خلال الـ method المسمى Zend_Controller_Action::_getParam . فى مثالنا هذا , باراميتر يأسم username سيتم إنشائه بالقيمة 'martel'.

| ملاحظة
يتم تنفيذ عملية اختبار المطابقة للـ routes بترتيب عكسى , لذلك تأكد من أن الـ routes الأكثر عمومية (فرصة مطابقتها اكبر) تم تعريفها اولاً.

| ملاحظة
فى الوقت الحالى , مسموح إستخدام أى حروف ما عدا (/) فى أسماء البراميترات, لكن ينصح بشدة أن تستخدم الحروف المسموح إستخدامها فى اسماء متغيرات PHP العادية, لأنه ربما تحدث تغييرات فى المستقبل فى طريقة العمل و بالتالى سيترتب هذا على اخطاء فى الكود الخاص بك.

هناك اثنان من المتغيرات الخاصة التى يمكنك إستخدامها فى الـ routes خاصتك - 'controller' و 'action', هذه المتغيرات الخاصة ستستخدم لإيجاد controller و/ أو action يتم تحديده فى الـ URL. المتغير الخاص 'action' يجب ان يتم تحديد قيمته سواء فى الـ route او كقيمة أساسية لبراميتر, و المتغير الخاص 'controller' إن لم يتم تعريفه مسبقا فسيتم اعتبار قيمته هى 'IndexController'.

    $router->addRoute('user', ':controller/:action');

إن قمت بتجربة الوصول الى 'http://example.com/news/latest' من خلال متصفحك , فسيقوم Zend_Controller_Dispatcher بإستدعاء latestAction من الـ NewsController خاصتك.

السابق | أعلى | التالي
5.2. إستخدام معرفات التحويل - routes | البداية | 5.4. القيم الأساسية للمتغيرات