我有一個字符串(URL路徑),如/recipes/cheese/cheese-meat-loaf
和我有路徑的巨型陣列如PHP查找數組中的字符串?
'/recipes/',
'/content/'
...
我要帶我的路,找到相匹配的路徑的一部分數組中的路徑。因此,對於此示例,它將與數組中的/recipes/
匹配,因爲路徑包含/ recipes /,但該數組也可能包含/recipes/cheese/
,在這種情況下,它應該與此匹配。
所以幾乎我想通過的路徑/
之間減去一切,並嘗試匹配它...所以它會做
`/recipes/cheese/cheese-meat-loaf` then if not found
`/recipes/cheese/` then if not found
`/recipes/` then if not found
return default
,它將巨陣中返回的值(關鍵是路徑)。
我希望它倒退,因爲我只想要一個值,並可能有多個/recipes/*/
但我不確定abouts如何做到這一點。
聽起來像是一個遞歸函數 –
['explode']工作(http://hk1.php.net /manual/en/function.explode.php)可能會幫助你。是的,你可能想使用簡單的代碼遞歸。 –
@JohnConde這將是尾遞歸的,所以在像php這樣的命令式編程語言中,我不會推薦使用遞歸。 – Jasper