在Zend Framework URL中使用破折号( - )而不是加号(+)

时间:2010-01-31 16:24:15

标签: php zend-framework url-routing

默认情况下,我的ZF似乎是用加号分隔多个参数字。

例如。 / product / test + product + name

我想用 - > / product / test-product-name

这是routes.ini

中的一行
routes.product.route = "product/:productName"<br />
routes.product.defaults.controller = product<br />
routes.product.defaults.action = product 

我该怎么做才能解决这个问题?

2 个答案:

答案 0 :(得分:1)

这是因为URL是urlencoded以确保文档有效性。在生成路由之前,您需要过滤/替换术语(productName)。一个简单的str_replace就应该是你需要的。在我的应用程序中,我过滤了多余的空格,然后用破折号替换空格。

答案 1 :(得分:0)

好吧,因为浏览器通常会知道+符号来分隔单词,所以Zend没有提供选项,很可能只使用+,因为它是正确的。< / p>

您可能需要编辑来源。

您可能需要查看正则表达式路由here.似乎它可能有用。