簡體   English   中英

通過SSH執行PHP腳本

[英]Executing PHP script via SSH

我想通過SSH將數據發送到我的服務器。 數據是圖像文件,需要保存到服務器上的目錄中。

如果我通過SSH運行腳本,如何獲取PHP腳本讀取圖像文件?

例如,如果我使用bash可以

./uploadimage.bash -image.jpg

那就是那樣。 但是我對PHP的了解有限。 據我所知,通常在處理文件時,PHP使用$ _FILE數組。 如果我通過SSH發送文件,是否需要使用它?

通過php命令行可執行文件運行腳本:

php myscript.php image.jpg image2.jpg

您可以通過$ argv數組獲取文件名,並以任意方式處理它們。

這取決於您需要處理圖像。

  • 您是否只需要將它們回顯給用戶?

     echo file_get_contents('image.jpg'); 
  • 您是要檢索傳遞給腳本的命令行變量嗎? 使用$argv

     myScript.php image.jpg # image.jpg becomes $argv[1] 
  • 您需要對圖像進行處理嗎? 使用GD功能

     $image = imagecreatefromjpeg('image.jpg'); // Do processing imagejpeg($image); // Pass a filename if you want to save it instead of output it. 

如果您只想將一堆文件上傳到遠程服務器,最好的選擇是使用scp命令而不是PHP

scp /your/file.png username@host:/remote/path.png

如果通過SSH會話執行PHP腳本,則無法通過SSH發送文件。 您必須首先將其復制到遠程服務器,然后執行使用file_get_contents類的PHP。

如果您確定 PHP必須是文件的接收者(也許您想做一些邏輯以確定文件名,路徑),則必須將其托管為網絡服務器,並且可以使用curl來上傳文件,例如這個:

curl -k -F myfile=@image.png foo.php.

暫無
暫無

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

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