Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
URL控制器映射策略(PHP)_Php_Url Routing - Fatal编程技术网

URL控制器映射策略(PHP)

URL控制器映射策略(PHP),php,url-routing,Php,Url Routing,这是一个学术性的问题,所以现在请随意退出。我已经对MVC框架中与URL/控制器映射相关的线程进行了深入研究,特别是: 到目前为止,我可以确定两种做法: 1:通过解析URL字符串进行动态映射(在“/”上分解) 2:模式匹配url到包含可用路由的配置文件 我想从人们那里得到一些关于如何最好地完成这项任务的意见的反馈(或链接到其他线程/文章) 我使用您的第一个选项 www.mysite.com/section1 这将被分解,在一个文件中,我将检查名为section1的控制器是否在服务器上,如果是,那

这是一个学术性的问题,所以现在请随意退出。我已经对MVC框架中与URL/控制器映射相关的线程进行了深入研究,特别是:

到目前为止,我可以确定两种做法:

1:通过解析URL字符串进行动态映射(在“/”上分解)

2:模式匹配url到包含可用路由的配置文件


我想从人们那里得到一些关于如何最好地完成这项任务的意见的反馈(或链接到其他线程/文章)

我使用您的第一个选项

www.mysite.com/section1


这将被分解,在一个文件中,我将检查名为section1的控制器是否在服务器上,如果是,那么我使用它来确定如果没有控制器,会发生什么情况,然后我查看是否有一个具有此名称的静态文件,如果脚本仍然找不到任何内容,则将其提供给404页面有用的信息。这对我来说非常有效,让我能够控制网站对不同情况的反应。

您可以混合使用这两种选项。大多数框架这样做是为了管理URL映射。第一个是默认值,第二个是备选值。使用它的一个php框架是Zend。您可以查看zend_路由器了解更多详细信息


您的问题是什么?您已经进行了研究和尝试,但毫无疑问?我正在询问有关将URL映射到控制器的方法的反馈,可以是来自StackOverflow用户群,也可以参考他们发现有用的其他文章/线程。谢谢您的回答。我使用ZF的经验是我尝试这种方法的原因——但老实说,它的路由器类对我来说有点难以理解。我求助于一些简单的字符串解析,并可能根据您的反馈实现一个配置文件回退。