我有一个字符串(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