看板 PHP 關於我們 聯絡資訊
※ 引述《Nexus5566 (Nexus5566)》之銘言: : 不好意思,想請問一些php執行exe的問題 : 如果不適合在這裡問,或是問題太蠢 請見諒... : 我目前要做的是把matlab轉成exe的檔案放在server 1.因為我不知道你SERVER環境是什麼, 我先當作是Linux : client傳參數至php之後,可以執行這個exe 2.執行exe這個問題是沒問題的 使用 exec, system.. 等 大概只是回傳值方式不同 幫你google一下請參考 http://stackoverflow.com/questions/732832/php-exec-vs-system-vs-passthru ex: <?php exec("echo {$var} | matlab.exe"); #這裡就看你用的方式跟你系統指令的熟悉度, cat檔案也可以 #要小心client command injection 3.client接收參數應該沒什麼問題,雖然沒有說出你是使用何種方式 $_POST, $_GET, php://stdin...或其他的 : exe會將執行結果存成特定檔名的txt,再由php讀取 : 第一個問題在版上爬過文,但想再確認一下是否php會等exe跑完之後,才執行下一行? 第一個問題正常來說是沒問題(上面2所提到的方式) 除非你系統指令直接下 &與其他於背景執行的指令,否則會等你執行完成 : 第二個問題則是若多人同時存取這個exe,會有什麼問題產生嗎(例如效能、檔案讀取)... : 因為在這個部分沒有涉獵過,所以問題可能見笑了,先感謝大家回答 第二個問題可能要依你的情況才能知道有何問題 a.如果exe只是單純計算數值 且無共同讀取任何東西 或者無影響執行任何參數值 則效能問題就要看你的exe 與你server可以乘載的量 b.如果exe有影響其參數值, 那就會有問題 解決作法需看你問題點 ex: 1.如果只是暫存檔案, 那可以更改每次存檔的唯一性 2.如果只是讀取檔案不會有什麼問題 3.如果讀取寫入都有且是同一個檔案, 那需做一個排隊機制 希望有回答到你的問題 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.34.241 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1445151553.A.2DC.html ※ 編輯: poi987poi987 (220.135.34.241), 10/18/2015 15:06:45
Nexus5566: 謝謝您的解答 10/20 07:06