我正在与这个小的php问题作斗争,我正在尝试从页面中读取url部分。
php代码是这样的:
preg_match_all('!<a href="Jobbörse-reader\/items\/(.*?)" title=".+">(.*?)</a>!',$content,$ergebnisse);
我的问题是preg_match_all()
返回0,如果我var_dump
$ergebnisse
,我会得到这样的空数组:
array(3) { [0]=> array(0) { } [1]=> array(0) { } [2]=> array(0) { } }
我正在阅读的页面代码是:
<a href="Jobbörse-reader/items/somelink.html" title="some text">NAME</a>
我需要somelink.html和NAME,但显然,它无法与之匹敌,有人可以帮助我吗?
BTW:我正在成功阅读内容。 谢谢
答案 0 :(得分:1)
工作得很好:
<?php $content='<a href="Jobbörse-reader/items/somelink1.html" title="some text1">NAME1</a>
<a href="Jobbörse-reader/items/somelink2.html" title="some text2">NAME2</a>
<a href="Jobbörse-reader/items/somelink3.html" title="some text3">NAME3</a>';
preg_match_all('!<a href="Jobbörse-reader\/items\/(.*?)" title=".+">(.*?)</a>!',$content,$ergebnisse);
print_r($ergebnisse);
答案 1 :(得分:1)
我已经测试了您的代码
<?php
$content='<body>
<a href="Jobbörse-reader/items/somelink.html" title="some text">NAME</a>
</body>';
echo preg_match_all('!<a href="Jobbörse-reader\/items\/(.*?)" title=".+">(.*?)</a>!',$content,$ergebnisse);
echo "\n";
var_dump($ergebnisse);
它完全有效:
$ php test.php
1
array(3) {
[0]=>
array(1) {
[0]=>
string(73) "<a href="Jobbörse-reader/items/somelink.html" title="some text">NAME</a>"
}
[1]=>
array(1) {
[0]=>
string(13) "somelink.html"
}
[2]=>
array(1) {
[0]=>
string(4) "NAME"
}
}