0

我正在使用PHP Simple HTML DOM Parser来获取我需要的一些值。我现在要做的是获取 URL 的一部分。

这是源的样子:

<a class="base-header-soldier-link" href="/bf3/soldier/someprofile/stats/123456789/">
  someprofile
</a>

我正在尝试检索值“123456789”,而不使用 URL 的其余部分。

我正在使用此代码来检索 URL:

foreach($html->find('.base-header-soldier-name a') as $e)
{
    $battlelog_id = $e->href;
}

所以基本上我想为 URL 的其余部分去掉它。

URL 可以根据用户名更改,因此“someprofile”将被替换。

你们中的任何人都可以帮助我吗?

4

1 回答 1

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
?>

甚至爆炸()

<?php 
$url = '/bf3/soldier/someprofile/stats/123456789/';
$url_parts = explode('/', rtrim($url,'/'));

echo end($url_parts);//123456789
?>
于 2012-08-16T15:28:12.970 回答