array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ja', ), 'this' => array ( 0 => 'features.file-upload.errors.php', 1 => 'エラーメッセージの説明', ), 'up' => array ( 0 => 'features.file-upload.php', 1 => 'ファイルアップロードの処理', ), 'prev' => array ( 0 => 'features.file-upload.post-method.php', 1 => 'POST メソッドによるアップロード', ), 'next' => array ( 0 => 'features.file-upload.common-pitfalls.php', 1 => '陥りやすい落とし穴', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ja', 'path' => 'features/file-upload.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
PHP はファイル配列とともに適当なエラーコードを返します。 エラーコードは、PHP によるファイルアップロードの間に生成され、 ファイル配列の['error'] 要素で アクセス可能です。言い換えると、エラーは、 $_FILES['userfile']['error'] でアクセス可能でしょう。
UPLOAD_ERR_OK
値: 0; エラーはなく、ファイルアップロードは成功しています。
UPLOAD_ERR_INI_SIZE
値: 1; アップロードされたファイルは、php.ini の upload_max_filesize ディレクティブの値を超えています。
UPLOAD_ERR_FORM_SIZE
値: 2; アップロードされたファイルは、HTML フォームで指定された MAX_FILE_SIZE を超えています。
UPLOAD_ERR_PARTIAL
値: 3; アップロードされたファイルは一部のみしかアップロードされていません。
UPLOAD_ERR_NO_FILE
値: 4; ファイルはアップロードされませんでした。
UPLOAD_ERR_NO_TMP_DIR
値: 6; テンポラリフォルダがありません。
UPLOAD_ERR_CANT_WRITE
値: 7; ディスクへの書き込みに失敗しました。
UPLOAD_ERR_EXTENSION
値: 8; PHP の拡張モジュールがファイルのアップロードを中止しました。 どの拡張モジュールがファイルアップロードを中止させたのかを突き止めることはできません。 読み込まれている拡張モジュールの一覧を phpinfo() で取得すれば参考になるでしょう。