如何使用不同的 URL 的所有相同类实例


How to all same class instance with different URL?

Twitter和Facebook等显示相同的页面布局,然后根据URL信息填充特定信息。

例如:twitter.com/bob 将显示配置文件布局/页面,但包含 bob 信息。

使用标准 URL 结构 (domain.com/controller/action),如何每次使用不同的 URL 调用同一控制器?

只需添加一个附加路由当你有

/{controller}/{action}

您还可以添加

/alias/{action}

您只需要将其传递给所需的控制器,而不是默认路由中使用的变量

你需要三样东西。

  1. 允许 URL 重写的 Web 服务器,例如使用 mod_rewrite 的 Apache 或带有代理设置的 Nginx。
  2. 前端控制器
  3. 将映射 URL 的路由器

前端控制器是简单的 scrip,您的所有请求都路由到其中。这通常会实例化路由器和其他对象。路由器负责实例化控制器并从查询字符串或 POST 正文或 URL 传递参数。

您应该查看Slim或Aura以获取路由器实现示例。