gpt4 book ai didi

php - DOMDocument() 的替代方法

转载 作者:搜寻专家 更新时间:2023-10-31 21:35:18 25 4
gpt4 key购买 nike

我正在使用 DOMDocument() 在我的代码中包含 RSS 提要。但是我得到这个错误:

URL 文件访问在服务器配置中被禁用

那是因为我的服务器不允许我修改 php.ini 文件或将 allow_url_fopen 设置为 ON。

有解决办法吗?这是我的完整代码:

<?php
$rss = new DOMDocument();
$rss->load('rss.php');

$feed = array();
foreach ($rss->getElementsByTagName('item') as $node) {
$item = array (
'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue,
'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
'date' => $node->getElementsByTagName('pubDate')->item(0)->nodeValue,
);
array_push($feed, $item);
}
$limit = 5;
echo '<table>';
for($x=0;$x<$limit;$x++) {
$title = str_replace(' & ', ' &amp; ', $feed[$x]['title']);
$link = $feed[$x]['link'];

echo <<<EOF
<tr>
<td><a href="$link"><b>$title</b></a></td>
</tr>
EOF;
}
echo '</table>';
?>

谢谢。

最佳答案

好的,我自己解决了。

<?php

$k = 'rss.php';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $k);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$rss = curl_exec($ch);
curl_close($ch);

$xml = simplexml_load_string($rss, 'SimpleXMLElement', LIBXML_NOCDATA);

$feed = array();
foreach($xml->channel->item as $item){
$item = array (
'title' => $item->title,
'desc' => $item->description,
'link' => $item->link,
'date' => $item->pubDate,
);
array_push($feed, $item);
}
$limit = 5;
echo '<table>';
for($x=0;$x<$limit;$x++) {
$title = str_replace(' & ', ' &amp; ', $feed[$x]['title']);
$link = $feed[$x]['link'];
echo <<<EOF
<tr>
<td><a href="$link"><b>$title</b></a></td>
</tr>
EOF;
}
echo '</table>';
?>

关于php - DOMDocument() 的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21546014/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com