1
我目前正在從事在線程序。我在寫一個php腳本,它在命令行中用proc_open()(在Linux Ubuntu下)執行命令。這是到目前爲止我的代碼:多個輸入與proc_open()
<?php
$cmd = "./power";
$descriptorspec = array(
0 => array("pipe", "r"),
1 => array("pipe", "w"),
2 => array("pipe", "w"),
);
$process = proc_open($cmd, $descriptorspec, $pipes);
if (is_resource($process)) {
fwrite($pipes[0], "4");
fwrite($pipes[0], "5");
fclose($pipes[0]);
while($pdf_content = fgets($pipes[1]))
{
echo $pdf_content . "<br>";
}
fclose($pipes[1]);
$return_value = proc_close($process);
}
?>
功率是,對於輸入2次詢問(它需要一個底座和一個指數並計算基礎^指數)的程序。它是用Assembly編寫的。但是當我運行這個腳本時,我得到錯誤的輸出。我的輸出是「1」,但我期望4^5作爲輸出。
當我運行一個程序,需要一個輸入,它的工作原理(我測試了一個簡單的程序,將輸入的值遞增1)。
我想我錯過了關於fwrite命令的一些東西。任何人都可以幫我嗎?
在此先感謝!
謝謝!這是問題:) – Devos50