只从URL中检索类别ID
问题描述:
我的网址结构为www.site.com/listings/232-real-estate,其中232是类别ID和不动产作为我的类别名称。只从URL中检索类别ID
我想只检索数字ID,用于使用类别ID从数据库提取数据。我怎么做?
答
可以使用的简单的东西:
<?php
preg_match_all('#(\d+)#', $url, $matches);
$catid = $matches[0];
?>
但是,这并不具有足够的检查到位。理想情况下,你想拆就基础/:
<?php
$elements = explode('/',$url);
$category = $elements[2];
$subelements = explode('-',$category);
$categoryid = intval($subelements[0]);
?>
答
您可以使用preg_replace
:
id = preg_replace('/^.*\/([0-9]*)-[^\/]*$/','$1')
这假定在URL中的最后/
只是类别ID之前。
答
如果232-real-estate
存储在变量$var
你可以使用获得ID:
$id = strtok($var, '-');
顺便说一句,它是那么微不足道得到名字:
$name = strtok(''); // returns: estate-agent
ID是'232'吗?或'23'? – huon 2012-03-25 10:05:50
@dbaupp,对不起,编辑我的问题。该ID是232. – WebNovice 2012-03-25 10:08:23
您想使用哪种语言? PHP或者awk也可以吗? – 2012-03-25 10:13:04