如何使用preg_replace获取id url。
这是链接: http://www.DDDD.com.br/photo/5b87f8eaa7c20f79c3257eb3ec0a35e0/id我如何获得身份证?在这种情况下将是:5b87f8eaa7c20f79c3257eb3ec0a35e0
答案 0 :(得分:1)
在这种情况下,我建议不要使用preg_match(preg_replace将用于替换。
只需使用
$array = explode('/',$_SERVER['REQUEST_URI']);
$id = $array[1];
如果必须使用preg_match:
$array = array();
preg_match('#^/photo/([0-9a-f]{32})/id$#',$_SERVER['REQUEST_URI'],$array);
$id = $array[1];
答案 1 :(得分:0)
您可以使用strripos
轻松完成此操作,以查找网址中的最后一个/
。
$url = $_SERVER['REQUEST_URI'];
if (($pos = strripos($url, '/')) !== false) {
$id = substr($url, $pos + 1);
}
else {
trigger_error('You must supply a valid photo ID');
}
答案 2 :(得分:0)
如果您想提取该id字符串,可以使用:
$id_url = "http://www.DDDD.com.br/photo/5b87f8eaa7c20f79c3257eb3ec0a35e0/id";
$pattern = "/photo\/([a-zA-Z0-9]*)/";
preg_match($pattern, $id_url, $output_array);
echo $output_array[1];
或者,要进行替换:
$id_url = "http://www.DDDD.com.br/photo/5b87f8eaa7c20f79c3257eb3ec0a35e0/id";
$pattern = "/photo\/([a-zA-Z0-9]*)/";
$replacement = "your replacement";
$replaced_url = preg_replace($pattern, $replacement, $id_url);
echo $replaced_url;
PHP Live Regex - 测试模式的有用工具