簡體   English   中英

php:從cli工具獲取stdout輸出數據?

[英]php: Grabbing stdout output data from cli tools?

是否有可能從php的命令行工具中獲取stdout輸出數據?

例:

我想將服務器動態創建的音頻文件混合上傳到客戶端。 SOX工具使我可以混合輸入mp3並將結果發送到stdout管道。 我可以先獲取此混音並立即上傳,而無需先將其另存為臨時文件嗎?

我認為您可以做的是使用內存中的緩沖區存儲MP3混合,然后使用fsockopen將流打開到要上載的服務器,然后手動編寫上載文件所需的標頭。

為此,您必須重現瀏覽器在上載文件時通常會構造的相同請求。

這是fsockopen的鏈接,用戶注釋包含有關如何執行此類任務的示例: http : //php.net/manual/en/function.fsockopen.php

實現此目的的另一種方法是使用curl上傳文件。 我沒有為此使用cURL,但是這里有一個示例鏈接: http : //www.akchauhan.com/how-upload-file-using-curl/

有一個名為passthru()的函數,它將通過二進制數據直接傳遞到客戶端的瀏覽器。 只要確保您的php腳本在傳遞數據之前放正確的標頭即可,例如content-type等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM