Trong linux tôi muốn chạy một cửa sổ thanh tiến trình gnome zenity từ PHP. Cách hoạt động của zenity như sau:Viết tới stdin từ PHP?
linux-shell$ zenity --display 0:1 --progress --text='Backing up' --percentage=0
10
50
100
Vì vậy, lệnh đầu tiên mở thanh tiến trình zenity ở 0%. Zenity sau đó có số đầu vào tiêu chuẩn như tỷ lệ phần trăm thanh tiến trình (vì vậy nó sẽ đi từ 10% đến 50% đến 100% khi bạn gõ những con số đó).
tôi không thể tìm ra cách để có được PHP để gõ vào những con số, mặc dù tôi đã cố gắng:
exec($cmd);
echo 10;
echo 50;
Và:
$handle = popen($cmd, 'w');
fwrite($handle, 10);
Và:
$descriptorspec = array(
0 => array("pipe", "r"), // stdin is a pipe that the child will read from
1 => array("pipe", "w") // stdout is a pipe that the child will write to
);
$h = proc_open($cmd, $descriptorspec, $pipes);
fwrite($pipes[1], 10);
Nhưng không ai trong số họ cập nhật thanh tiến trình. Trong cách nào tôi có thể bắt chước hiệu ứng của stdin trên vỏ linux để có được zenity để cập nhật thanh tiến trình của nó?
Cảm ơn rất nhiều! Không thể tin rằng tôi đã quên dòng mới! :) – hamstar