簡體   English   中英

奇怪的未定義偏移量:0錯誤

[英]Weird Undefined offset: 0 error

我有以下PHP代碼,用於從iOS應用程序接收文件。

接收到該信息,並為我的調試$file設置並包含所有形式的內容。 傳遞的原始值為btn-7.png$file[0] = btn-7

該函數已處理,所有圖像都復制到系統中,就像我在文件夾中看到的那樣...。因此,我不知道為什么會收到此錯誤。

錯誤出現在顯示$_FILES[$file]的函數的第一行

有誰知道為什么會這樣?

編輯:正如我所說。 無需執行var_dump,因為我可以回顯$ file。 另外,我來自iOS控制台的debbugin無法看到非JSON結果,我僅依靠PHP日志來了解實際的錯誤消息。

EDIT2:根據要求`var_dump(); (我正在使用XCode,iOS開發控制台而不是Web瀏覽器工作)

ob_start();

            var_dump($file);
            $e = ob_get_contents();
            ob_end_clean();
            error_log($e, 0);

結果

[06-Jun-2013 17:58:26 UTC] string(9) "btn-7.png"`

錯誤

[06-Jun-2013 17:24:45 UTC] PHP Notice:  Undefined offset: 0 in C:\xampp\htdocs\igym\classes\shareexercise.php on line 146

的PHP

private function storeFile( $file )
        {
            $file = explode('.',$file);
            $file = $file[0];
            $msg['asd'] = $file;
            echo json_encode($msg);

            if( $_FILES[$file]["type"] !== "image/png" && $_FILES[$file]["size"] < 2048600 )
            {
                $error['error'] = 'There was a problem uploading your picture';
                echo json_encode($error);
                return 0;
            }

            if( move_uploaded_file( $_FILES[$file]['tmp_name'], IMGUPLOADDIR . '/' . $this->userID . '/' . $_FILES[$file]['name'] ) ) {
                return true;
            } else{
                //$error['error'] = 'There was a problem uploading your picture';
                //echo json_encode($error);
                return false;
            }

        }

$_FILES是一個關聯數組,而不是數字數組:

來自: php.net

$_FILES
An associative array of items uploaded to the current script via the HTTP POST method.

您應該使用var_dump($_FILES)並查看其結構。 因為索引是字段名或其他字符串,所以不存在0。

麻生: 有關$ _FILES的教程

暫無
暫無

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

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