如何从php运行wget以便输出显示在浏览器窗口中?

时间:2010-03-27 07:05:06

标签: php

如何从php运行wget以便输出显示在浏览器窗口中?

4 个答案:

答案 0 :(得分:31)

您只需使用file_get_contents即可。它更容易。

echo file_get_contents('http://www.google.com');

如果你必须使用wget,你可以尝试类似:

$url = 'http://www.google.com';
$outputfile = "dl.html";
$cmd = "wget -q \"$url\" -O $outputfile";
exec($cmd);
echo file_get_contents($outputfile);

答案 1 :(得分:11)

exec函数可用于运行wget。我从来没有使用过wget来进行简单的文件下载,但你会使用你给wget的任何参数来输出文件内容。 exec的第二个参数/参数将是一个数组,并且该数组将与wget的输出一行一行地填充。

所以你会有类似的东西:

<?php

exec('wget http://google.com/index.html -whateverargumentisusedforoutput', $array);

echo implode('<br />', $array);

?> 

exec的手册页可能更好地解释了这一点: http://php.net/manual/en/function.exec.php

答案 2 :(得分:2)

不要在大多数服务器上尝试,不应该阻止他们运行像wget这样的命令! file_get_contents刚刚取代了我的客户坚持使用这个和快速

的糟糕的iframe
<?php

$content = file_get_contents('http://www.mysite.com');
$content = preg_replace("/Comic Sans MS/i", "Arial, Verdana ", $content);
$content = preg_replace("/<img[^>]+\>/i", " ", $content); 
$content = preg_replace("/<iframe[^>]+\>/i", " ", $content);  
$echo $content;

?>

稍后改变字体,图像和删除图像和iframe等....我的网站看起来比以往更好! (是的,我知道我的代码并不精彩,但对我来说这是一个很大的改进,并消除了烦人的格式!)

答案 3 :(得分:1)

它有效

<?php

    system("wget -N -O - 'http://google.com")

?>