如何在 URI 中获取数字 ID?
How to grab a numeric id in URI?
我需要获取 #/
之后的第一个数字 ID。
例如,我只想在这些 URI 中获取 68 和 112:
//www.domain.tld/category/14-457-myproduct.html#/68-attribute-fm_300_224_39_b
//www.domain.tld/category/36-578-myproduct.html#/112-attribute-fm_489_471_51_w
我什至尝试将 URI 分成几个步骤,但它在我的网站(Smarty 模板)上一次都不起作用。
你试过这样的事情吗:
<?php
$pattern = "/#\/([0-9])*-/";
$url1 = "//www.domain.tld/category/14-457-myproduct.html#/68-attribute-fm_300_224_39_b";
$url2 = "//www.domain.tld/category/36-578-myproduct.html#/112-attribute-fm_489_471_51_w";
echo getNumber($url1, $pattern);
echo "\n";
echo getNumber($url2, $pattern);
function getNumber($url, $pattern){
preg_match($pattern, $url, $matches);
return substr($matches[0], 2, -1);
}
我需要获取 #/
之后的第一个数字 ID。
例如,我只想在这些 URI 中获取 68 和 112:
//www.domain.tld/category/14-457-myproduct.html#/68-attribute-fm_300_224_39_b
//www.domain.tld/category/36-578-myproduct.html#/112-attribute-fm_489_471_51_w
我什至尝试将 URI 分成几个步骤,但它在我的网站(Smarty 模板)上一次都不起作用。
你试过这样的事情吗:
<?php
$pattern = "/#\/([0-9])*-/";
$url1 = "//www.domain.tld/category/14-457-myproduct.html#/68-attribute-fm_300_224_39_b";
$url2 = "//www.domain.tld/category/36-578-myproduct.html#/112-attribute-fm_489_471_51_w";
echo getNumber($url1, $pattern);
echo "\n";
echo getNumber($url2, $pattern);
function getNumber($url, $pattern){
preg_match($pattern, $url, $matches);
return substr($matches[0], 2, -1);
}