1

我想尝试在 .txt 文件中查看两个 shell_exec() 调用的输出。所以我尝试了这个:

$data_server = shell_exec('./c5.0demo -f $username -r');
$errorFile = "error.txt";
$fileopen = fopen($errorfile, 'w') or die ("can't open file");
fwrite($fileopen, $data_server);

$data_server2 = shell_exec('./predictBatch -f $username -r > $username.result');
$fileopen = fopen($errorfile, 'w') or die ("can't open file");
fwrite($fileopen, $data_server2);

可执行文件“c5.0demo”和“predictBatch”位于此 PHP 脚本的同一目录中。变量 $username 通过 POST 方法检索: $user = $_POST['username']; 作为一个数组,我通过以下方式将值放入另一个变量中:

 foreach($user as $val)
 $username .= $val;

我认为这是正确的,但我的目录中没有“error.txt”。为什么我错了?感谢您的支持!

4

1 回答 1

0

Try the following:

$data_server = shell_exec("./c5.0demo -f $username -r");
$data_server2 = shell_exec("./predictBatch -f $username -r > $username.result");

file_put_contents("/path/to/log/error.txt","{$data_server} : {$data_server2}\n",FILE_APPEND);

Obviously $username needs to be defined - also, what is the datatype of $username? I ask, because $username.result looks very wrong.

You should also take very serious note of @mobius warning.

于 2011-12-12T14:50:18.857 回答