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

xxb16uws  于 2023-02-11  发布在  PHP
关注(0)|答案(5)|浏览(201)

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

nx7onnlm

nx7onnlm1#

您可以直接使用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);
qni6mghb

qni6mghb2#

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

vql8enpb

vql8enpb3#

很管用

<?php

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

?>
x4shl7ld

x4shl7ld4#

不要在大多数服务器上尝试这种方法,应该阻止它们运行wget之类的命令!file_get_contents刚刚用这个和一个快速的

<?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等...和我的网站看起来比以往任何时候都好!(是的,我知道我的代码位是不是辉煌,但它是一个很大的改进,我和消除恼人的格式!)

vktxenjb

vktxenjb5#

使用PHP exec使wget返回到$output变量的关键是在-n -o之后使用**"-"**参数。如果你看不清楚,可能会错过它。

$command = 'wget -N -O - https://myURL.com/index.php';  
 exec($command , $output, $returnCode);   
 print_r($output);

相关问题