2012-04-07 99 views
0

我有一個php腳本,而其他人正在生成URL-s。URL中的非編碼百分比

而這個人不知道%字符必須被編碼,所以我有問題,阿帕奇拒絕這些請求。 (錯誤請求)

所以我的問題是,如何轉換像 site.com/search/one 2% 一個網址爲有效 site.com/search/one 2%25

謝謝

回答

0

像這樣的東西可能會有幫助嗎?

preg_replace('/%(\D)/', '%25$1'); 

這應該用編碼版本替換%,後面跟除數字以外的任何值。

我稍後將編輯此帖子,以便僅在排除%後沒有兩個數字時纔會排除此功能,但這可能會提供一個提示。

+0

我想這會工作,但作爲rewrite_url,因爲鏈接已經形成,並沒有執行腳本,因爲Apache拋出錯誤的請求 – dZZx 2012-04-07 10:54:32

+0

哦,對,你沒有訪問腳本發送請求之前。 ..對不起,我不知道你可以在那裏做任何事情,除了試圖讓發送腳本改變。 – Armatus 2012-04-07 11:36:41