(PHP 4 >= 4.0.3, PHP 5)
is_uploaded_file — 判斷文件是否是通過 HTTP POST 上傳的
說明
bool is_uploaded_file ( string$filename
)
如果 filename
所給出的文件是通過
HTTP POST 上傳的則返回 TRUE
。這可以用來確保惡意的用戶無法欺騙腳本去訪問本不能訪問的文件,例如
/etc/passwd。
這種檢查顯得格外重要,如果上傳的文件有可能會造成對用戶或本系統(tǒng)的其他用戶顯示其內(nèi)容的話。
為了能使 is_uploaded_file() 函數(shù)正常工作,必段指定類似于 $_FILES['userfile']['tmp_name'] 的變量,而在從客戶端上傳的文件名 $_FILES['userfile']['name'] 不能正常運作。
參數(shù)
filename
要檢查的文件名。
返回值
成功時返回 TRUE
, 或者在失敗時返回 FALSE
。
范例
Example #1 is_uploaded_file() 例子
<?php
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
echo "File ". $_FILES['userfile']['name'] ." uploaded successfully.n";
echo "Displaying contentsn";
readfile($_FILES['userfile']['tmp_name']);
} else {
echo "Possible file upload attack: ";
echo "filename '". $_FILES['userfile']['tmp_name'] . "'.";
}
?>
參見
move_uploaded_file() - 將上傳的文件移動到新位置 $_FILES 關(guān)于用法的簡單例子 文件上傳處理