愚蠢的問題,這樣的代碼:系統()的PHP函數打印變量2倍
<?php
$variable = system("cat /home/maxor/test.txt");
echo $variable;
?>
與文件test.txt:
blah
打印:
blah
blah
能有什麼我用系統()函數不打印什麼,所以我得到1「等等」???
愚蠢的問題,這樣的代碼:系統()的PHP函數打印變量2倍
<?php
$variable = system("cat /home/maxor/test.txt");
echo $variable;
?>
與文件test.txt:
blah
打印:
blah
blah
能有什麼我用系統()函數不打印什麼,所以我得到1「等等」???
使用exec
而不是system
system
正在調用實際的cat
程序,它從test.txt
輸出「blah」。它還會將值返回到$variable
,然後再打印出來。
使用exec
或而不是系統。
system
顯示任何程序輸出並返回最後一行輸出。
exec
什麼都不顯示,並返回最後一行輸出。
passthru
顯示任何方案產出和回報什麼。
改爲使用exec
。爲了讓所有的輸出,而不僅僅是最後一行做到這一點:
$variable = array();
$lastline = exec("cat /home/maxor/test.txt", $variable);
echo implode("\n", $variable);