1
현재 온라인 프로그램을 작성 중입니다. proc_open() (리눅스 우분투에서) 명령 줄에서 명령을 실행하는 PHP 스크립트를 작성하고 있습니다. 이는 지금까지 내 코드이다다중 입력 : 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 배를 요구하는 프로그램이다. 그것은 의회에 기록되어 있습니다. 그러나이 스크립트를 실행할 때 잘못된 결과가 표시됩니다. 내 출력은 "1"이지만 출력으로 4^5를 기대합니다.
하나의 입력을 사용하는 프로그램을 실행하면 작동합니다 (입력 된 값을 하나씩 증가시키는 쉬운 프로그램을 테스트 함).
fwrite 명령과 관련하여 뭔가 빠졌다고 생각합니다. 아무도 나를 도울 수 없습니까?
미리 감사드립니다.
감사합니다! 그게 문제 였어 :) – Devos50