2016-05-16 121 views
0

我有一個搜索功能,在我的網站,我想讓搜索引擎友好的聯繫,所以我決定讓查詢字符串轉換來自:爆炸URL參數

http://example.com/search?category=example&subcategory=mycategory&region=2 //and other parameters 

要:

http://example.com/search/{parameters}/{string-for-seo?}/{string-for-seo2?}/ //etc. 

其中{parameters}是一個像這樣的字符串:c3s34r55p21

字符串的目的是壓縮參數。

C3 =類別ID N.3, S34 =子類別ID n.34

等。

問題是,我不知道如何將這個奇怪的字符串爆炸到一個數組,以獲取參數。

[ 
    'c' => 3 
    's' => 34 
    'r' => 55 
] 
+1

'c3s34r55p21'是「搜索引擎友好」的完全相反。 – mario

+0

請檢查[此演示](https://ideone.com/zX3OFP)。它有幫助嗎? –

+0

@mario'/ search/c3s34r55p21'不是seo-friendly,而是'/ search/c3s34r55p21/new-york/car-service'是的。 –

回答

0

我想這是你在找什麼

$input = "c3s34r55p21"; 

$array = preg_match_all('/([a-z])(\d*)/', $input, $matches); 
/* 
var_export($array); 
echo "\n"; 
var_export($matches); 
echo "\n"; 
*/ 
$result = array_combine($matches[1], $matches[2]); 
var_export($result); 
echo "\n";