Zend Framework - ZF 1.12 中的路由是如何完成的?
Zend Framework - How routing is done in ZF 1.12?
我正在浏览 Zend 文档,但我不清楚 路由 在 Zend 框架 1.12 中是如何完成的。
我从文档中了解到,当我们在浏览器中点击 URL 时,请求将转到 public 文件夹中的 index.php。
但我不明白 Zend 框架如何分解 URL 并调用特定的控制器和操作。
例如。
考虑 URL:http://zendtutorial.local/blog/new
Zend 如何评估来自 BlogController 的 newAction
当我们点击 URL 首先发生以下事情:
- 首先调用 public 目录中的 index.php。
- 在 Index.php 中定义了 APPLICATION_PATH、APPLICATION_ENV 等常量并创建了应用程序对象。
- application.ini 文件中的设置被初始化。
- application.ini 包含默认控制器、默认模块、数据库设置等所有信息
- 然后 Zend_Application 的 bootstrap 函数被调用。
- 此函数从 bootstrap.php 调用 Bootstrap class。
- 然后 Zend_Application_Bootstrap_Bootstrap 的 运行() 方法被调用。
- Zend_Application_Bootstrap_Bootstrap :: 运行() 方法被调用。
- 最后,调用 Zend_Controller_Front 的 dispatch() 方法。
- dispatch() 方法将请求的 URL 路由到特定的控制器和操作。
我正在浏览 Zend 文档,但我不清楚 路由 在 Zend 框架 1.12 中是如何完成的。
我从文档中了解到,当我们在浏览器中点击 URL 时,请求将转到 public 文件夹中的 index.php。
但我不明白 Zend 框架如何分解 URL 并调用特定的控制器和操作。
例如。
考虑 URL:http://zendtutorial.local/blog/new
Zend 如何评估来自 BlogController 的 newAction
当我们点击 URL 首先发生以下事情:
- 首先调用 public 目录中的 index.php。
- 在 Index.php 中定义了 APPLICATION_PATH、APPLICATION_ENV 等常量并创建了应用程序对象。
- application.ini 文件中的设置被初始化。
- application.ini 包含默认控制器、默认模块、数据库设置等所有信息
- 然后 Zend_Application 的 bootstrap 函数被调用。
- 此函数从 bootstrap.php 调用 Bootstrap class。
- 然后 Zend_Application_Bootstrap_Bootstrap 的 运行() 方法被调用。
- Zend_Application_Bootstrap_Bootstrap :: 运行() 方法被调用。
- 最后,调用 Zend_Controller_Front 的 dispatch() 方法。
- dispatch() 方法将请求的 URL 路由到特定的控制器和操作。