我正在使用PHP Simple HTML DOM Parser来获取我需要的一些值。 我现在要做的是抓取一部分网址。
这是源的外观:
<a class="base-header-soldier-link" href="/bf3/soldier/someprofile/stats/123456789/">
someprofile
</a>
我正在尝试检索值“123456789”,而没有其余的网址。
我正在使用此代码检索网址:
foreach($html->find('.base-header-soldier-name a') as $e)
{
$battlelog_id = $e->href;
}
所以基本上我想删除其余的URL。
URL可以根据用户名进行更改,因此“someprofile”将被替换。
你们有人可以帮助我吗?
答案 0 :(得分:3)
您可以通过几种方式完成,最简单的是basename()
<?php
$url = '/bf3/soldier/someprofile/stats/123456789/';
echo basename($url);//123456789
?>
或者更健壮的方式是pathinfo()
<?php
$url = '/bf3/soldier/someprofile/stats/123456789/';
$url_parts = pathinfo($url);
/*
Array
(
[dirname] => /bf3/soldier/someprofile/stats
[basename] => 123456789
[filename] => 123456789
)
*/
echo $url_parts['filename']; //123456789
?>
甚至是explode()
<?php
$url = '/bf3/soldier/someprofile/stats/123456789/';
$url_parts = explode('/', rtrim($url,'/'));
echo end($url_parts);//123456789
?>