Fatal error: Cannot re-assign auto-global variable _FILES in C:\xampp\htdocs\user\utils\CommonUtils.php on line 1395致命錯誤:不能重新分配自動全局變量
代碼上線1395是
public static function saveAvatar($code, $pilotid, $_FILES) {
Fatal error: Cannot re-assign auto-global variable _FILES in C:\xampp\htdocs\user\utils\CommonUtils.php on line 1395致命錯誤:不能重新分配自動全局變量
代碼上線1395是
public static function saveAvatar($code, $pilotid, $_FILES) {
你不能使用$_FILES
它的保留字的功能參數,用它來代替
public static function saveAvatar($code, $pilotid, $files) { }
,並調用傳遞$_FILES
這樣
saveAvatar($code, $pilotid, $_FILES);
OR
您也可以直接訪問$_FILES
沒有傳遞給它的函數參數的內部功能。
您試圖在本地scpe中設置一個名爲$ _FILES的變量作爲saveAvatar()方法的參數;但不能,因爲它是特殊超全球之一。
行更改爲
public static function saveAvatar($code, $pilotid) {
的$ _FILES超全局仍然將提供給該方法簡單,因爲它是一個超全局
我也面臨同樣的問題。然後我從變量列表中刪除了$ _FILES變量,我的網站又開始工作了。
謝謝你的風格答案,只是重複一個已發佈的答案不適合這個網站。 – bwoebi 2016-12-29 22:24:57
通常我們不能重新分配$ _Files,這意味着我們無法將自動超級全局變量作爲參數或函數傳遞。但我們有一個備用解決方案。
傳遞文件作爲參數
function ImageProcess(array $_File){
$image = $_FILES["file"]["name"];
$uploadedfile = $_FILES['file']['tmp_name'];
//Write your code here...
}
通話,支持自動全局變量作爲自變量的函數。
if ($_SERVER['REQUEST_METHOD'] == "POST") {
if(isset($_FILES['file'])){
echo ImageProcess($_FILES['file']);
}
}
表格上傳
<form method="post" action="<?php $_SERVER['PHP_SELF'];?>" enctype="multipart/form-data">
<input type="file" name="file" />
<button type="submit">Update & Save</button>
</form>
我已經刪除了MySQL的標籤。請注意標籤應該描述你的問題,而不是你的項目。 – 2013-02-19 09:51:05