我将举一个例子 我希望将目录列表写入文件 所以我这样做了
<?php
$command="dir";
exec($command,$output);
//i want the directory list to be written to a file
// so i did this
$fp=fopen("file.txt","w");
fwrite($fp, $output);
//its actually writing the 0(return value for exec is int) to the file
// but i want the list of directories to be written to file
?>
它实际上将0(exec的返回值为int)写入文件 但我希望将目录列表写入文件 请告诉我一种方法
答案 0 :(得分:0)
我认为对于你的针,你应该使用命令“passthru”。
这是一个例子:
<?php
$command = exec('dir', $outpout);
$data = "";
foreach($output AS $key=>$val){
$data .= $val . "\n";
}
$fp = fopen('file.txt', 'w') or die("i cant write...permission ?");
fwrite($fp, $data);
fclose($fp);
?>
让我知道它是否有效
度过愉快的一天
安东尼奥
P.S。谢谢凯文
答案 1 :(得分:0)
您可以直接在exec调用中执行此操作(它更短):
exec("dir > file.txt")
无论如何,你的代码是错误的,因为$ output是一个数组。 固定代码:
$command="dir";
exec($command,$output);
$fp=fopen("file.txt","w");
fwrite($fp, join("\n",$output))
更短的代码:
exec("dir",$output);
file_get_contents("file.txt",join("\n",$output));
答案 2 :(得分:0)
您只需使用shell_exec
:
<?php
$output = shell_exec('dir');
$fp=fopen("file.txt","w");
fwrite($fp, $output);
?>