我正在处理一些新闻网站的索引。一种新闻剪报。 我是一个业余和好奇的人。我不是程序员,所以这个问题对业务中的任何人来说都是愚蠢的。但如果有人可以提供帮助,谢谢。 我正在解析的网站的分页实际上是相同的,我使用了这个方案:
$url = $ url. '/page/'. $s;
$next_url = $s + 1;
$prev_url = $s - 1;
if ($prev_url <= 0) {
$prev_url = 1;
}
格式基本上是这样的:
http://example.com/politics/page/2
但昨天我遇到了一些不同的东西,我不知道如何翻页。我通过preg_match_all
获得此链接格式:
http://www.example.com/browse-Politics-National-texts-1-date.html
这是分页部分:
-1-
这部分是可变的:
Political-National-texts
任何指导?
答案 0 :(得分:0)
<?php
$url = 'http://www.example.com/browse-Politics-National-texts-1-date.html'
$url_basename = basename($url); // extract `browse-Politics-National-texts-1-date.html`
$url_exploded = explode('-',$url_basename); // make an array delimited by `-`
array_pop($url_exploded);
$url_page_number = array_pop($url_exploded); // get the 2nd element from back
?>
结果:
$ url_page_number = 1
PS。可以缩短它,但这是出于教育目的: - )
答案 1 :(得分:0)
如果你要求的是分析分页和变量部分的url,你可以使用preg_match和以下regexp:
if (preg_match('/^http:\/\/www.example.com\/browse-([-a-zA-Z]+)-(\d+)-date\.html$/', $url, $matches)) {
var_export($matches);
}
然后你会得到结果:
array (
0 => 'http://www.example.com/browse-Politics-National-texts-1-date.html',
1 => 'Politics-National-texts',
2 => '1',
)
$matches
中的键将是: