2013-06-18 33 views
0

我有一個關於zend_route中正則表達式的問題。 我用這個XML代碼ZendFramework創建路線:Zend Route正則表達式 - 不能在URL中使用加號

<category> 
    <type>Zend_Controller_Router_Route_Regex</type> 
    <route>c-([a-zA-Z0-9\-\_\+]+)</route> 
    <defaults controller="category" action="index" seo_id=""/> 
    <map seo_id="1" /> 
    <reverse>c-%s</reverse> 
</category> 

我可以到頁面http :: //site.com/c-bla-bla_12 但我不能使用加符號網址。例如,http :: //site.com/c-bla+bla

我該怎麼做?謝謝。

回答

1

也許URL被傳遞給正則表達式之前被轉義。試試這個:

<route>c-([a-zA-Z0-9\-\_\+\s]+)</route> 
+0

我沒有得到錯誤。頁面打開,但我得到了seo_id ='音頻SD'。我想要加上seo_id。我怎樣才能做到這一點? –

+0

'+'用於在網址中跳出''。如果你想'+',則用'+'替換空格。 – Stephan