请阅读下面的代码和评论,看看我在做什么。很难用一段话来解释。
$url_fixx = 'home/sublink/group-view/product/catview1';
// What my variable holds. MY GOAL IS: I want to omit group-view, product and catview1 from this so I use the trick below.
catview 末尾有一个随机数,因此我使用下面的代码查找末尾的数字,在这种情况下它输出“catview1”
$string = $url_fixx;
$matches = array();
if (preg_match('#(catview\d+)$#', $string, $matches)) {
$catViewCatch = ($matches[1]);
}
// I got this from http://stackoverflow.com/a/1450969/1567428
$url_fixx = str_replace( array( 'group-view/', 'product', 'catview1' ), '', $url_fixx );
// this outputs what I want.
我的问题是:
//When I replace "catview1" with $catViewCatch, the whole str_replace doesnt work.
$url_fixx = str_replace( array( 'group-view/', 'product', $catViewCatch), '', $url_fixx );
这是为什么?我做错了什么?
PS:我的网址有时也会变成这样。
$url_fixx = 'home/sublink/group-view/anotuer-sublink/123-article'
我该如何解决所有这些问题?