loadHTMLFile无法返回URL

时间:2014-10-15 06:29:56

标签: php dom file-io

<?php

    $url="http://somedomain/something";
    $lines = file('text.txt');
    foreach ($lines as $line_num => $line) {
    echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n";
    $dom = new DOMDocument;
    $dom->loadHTMLFile($url.$line); //cannot load this
    foreach ($dom->getElementsByTagName('p') as $node) {
    // do stuff with $node
    echo $node->nodeValue, "\n";    



    }
    }   


fclose($handle);

   ?>

我想将网址附加到文本文件的行中:

实施例

$ url。$ line1(http://somedomain/something/line1

$ url。$ line2(http://somedomain/something/line2

我已成功设置了所有内容,循环也运行良好。但每当我尝试将url与行连接时,都会返回HTTP 500错误

此外,这些字符'%0D%0A'会自行连接到$ url。$行的末尾,因此错误?

任何帮助表示赞赏

更新:错误是由于'%0D%0A'字符以某种方式将自己附加到每个网址的末尾。知道如何删除它们吗?

1 个答案:

答案 0 :(得分:0)

您获得的额外字符%0D%0A是Windows计算机的回车符和换行符。要摆脱它们,您可以将fileFILE_IGNORE_NEW_LINES标志一起使用:

$lines = file('text.txt', FILE_IGNORE_NEW_LINES);

这将停止回车字符包含在数组中每行的末尾。

或者,您可以选择以rtrim结尾的行:

$line = rtrim($line);