這是我的 uploads.php
程式碼:
<?php ini_set('display_errors', 1); error_reporting(E_ALL); $uploads_dir = '/tmp' . DIRECTORY_SEPARATOR; $tmp_name = $_FILES["file"]["tmp_name"]; $name = basename($_FILES["file"]["name"]); echo move_uploaded_file($tmp_name, $uploads_dir . $name);
它會傳回 1
(又稱 true
),但檔案不會複製到 /tmp
。
如果我將 $uploads_dir
設定為具有權限 777 的不同目錄,它就可以運作。
如果目標目錄錯誤或沒有正確的權限,我會收到錯誤訊息。
/tmp
目錄作為我猜的正確權限:
$ ls -l / | grep tmp drwxrwxrwt 21 root root 20480 apr 21 17:39 tmp
那麼為什麼它回傳 true
但不複製任何內容?
如果你的tmp目錄與uploads.php檔案在同級更改:
對此:
或如果該資料夾位於根層級(又稱 / ) 您需要下降到相同的級別,例如:
希望對你有幫助。