我有PHP Simple HTML DOM Parser的问题。我无法从正确的div标签中获取链接和文本... 这是网址http://apeiron.comyr.com/asd.php,这里是要解析link的网址。
以下是代码:
<?php
include 'simple_html_dom.php';
ini_set('short_open_tag', '0');
$html = file_get_html('http://www.apeiron-uni.eu/lycboardclient/Default.aspx?DepartmentID=2');
header('Content-Type: application/json; charset=utf-8');
echo '{ "rezultati":[ ';
//$i = 1;
foreach($html->find('div[id=center].post') as $article) {
$item['datum'] = $article->find('div.post-date', 0)->plaintext;
$item['text'] = $article->find('a', 0)->plaintext;
$item['more'] = $article->find('a', 0)->href;
// if($i < 11){
$datum=$item['datum'];
$text=$item['text'];
$link=$item['more'];
$xml=array("datum" =>$datum ,"text" => $text,"link" => $link);
echo json_encode($xml).",";
/*
}
else{
}*/
//$i++;
}
echo ']}';
?>
答案 0 :(得分:0)
在您的代码中
foreach($html->find('div[id=center].post') as $article) { ... }
应该是
foreach($html->find('div#center .post') as $article) { ... }
<强>输出:强>
{“结果”:[{“date”:“Friday,01.03.2013。Year”,“text”:“ u0161tita ra \ u010dunarskih和业务系统“,”链接“: “Default.aspx?DepartmentID = 2&amp; NewsID = 9429”},{“date”:“ 星期三,27.02.2013。年“,”文字“:”你是数学考试 2 - 全日制和兼职学生“,”链接“:”Detail.aspx? NewSID的 = 9407“},{”date“:”星期二,26.02.2013。年“,”文字“:”系统II期间理论“,”链接“:”Default.aspx? DepartmentID = 2&amp; NewsID = 8434“},{”date“”星期一,25.02.2013。年“,”文字“:”你 \ u0161a-II数学测试“,”链接“:”Detail.aspx? NewsID = 9387“},{” 日期“:”2013年2月25日星期一。年“,”文字“:”德国\ u010dki 语言我“,”链接“:”Default.aspx? DepartmentID = 2&amp; NewsID = 9391 “},{”date“:”星期五,22.02.2013。是“文本”:“统计结果 前面的职责“,”链接“:”Default.aspx? DepartmentID = 2&amp; NewsID = 9372“},{”date“:”星期五,22.02.2013。年“,”文字“:”理论决定 \ u010divanja - 先决条件“,”链接“:”Default.aspx? DepartmentID的 = 2&amp; NewsID = 9366“},{”date“:”2013年2月20日星期三。年“,”文字“:”二月与教授的截止日期。 Mirela Simi \ u0107“,” 链接“:”Default.aspx? DepartmentID = 2&amp; NewsID = 9354“},{”date “:”星期一,18.02.2013。年“,”文字“:”决定理论 u010divanja-test II“,”link“:”Default.aspx? DepartmentID = 2&amp; NewsID = 9310“},{”date“:”星期一,18.02.2013。年“,”文字“:” 信息学和ra \ u010dunarske技术“,”链接“”Default.aspx? DepartmentID = 2&amp; NewsID = 9319“},]}