目次
php文件上传,

php文件上传,

Jun 13, 2016 am 08:50 AM
array gif jpg php png アップロード のために 書類 タイプ 設定

php文件上传,

<?<span>php
    </span><span>$allowtype</span> = <span>array</span>("gif", "png", "jpg");   <span>//</span><span>设置充许上传的类型为gif, png和jpg</span>
    <span>$size</span> = 1000000;                           <span>//</span><span>设置充许大小为1M(1000000字节)以内的文件</span>
    <span>$path</span> = "./uploads";                       <span>//</span><span>设置上传后保存文件的路径
    
    //判断文件是否可以成功上传到服务器,$_FILES['myfile']['error'] 为0表示上传成功</span>
    <span>if</span>(<span>$_FILES</span>['myfile']['error'] > 0<span>) {      
        </span><span>echo</span> '上传错误: '<span>;
        </span><span>switch</span> (<span>$_FILES</span>['myfile']['error'<span>]) {
             </span><span>case</span> 1:  <span>die</span>('上传文件大小超出了PHP配置文件中的约定值:upload_max_filesize'<span>);  
            </span><span>case</span> 2:  <span>die</span>('上传文件大小超出了表单中的约定值:MAX_FILE_SIZE'<span>);  
            </span><span>case</span> 3:  <span>die</span>('文件只被部分上载'<span>); 
            </span><span>case</span> 4:  <span>die</span>('没有上传任何文件'<span>); 
            </span><span>default</span>: <span>die</span>('末知错误'<span>);
           }
    }
    
    </span><span>//</span><span>判断上传的文件是否为充许的文件类型,通过文件的后缀名</span>
    <span>$hz</span> = <span>array_pop</span>(<span>explode</span>(".", <span>$_FILES</span>['myfile']['name'<span>]));
    </span><span>//</span><span>通过判断文件的后缀方式,来决定文件是否是充许上传的文件类型</span>
    <span>if</span>(!<span>in_array</span>(<span>$hz</span>, <span>$allowtype</span><span>)) {
        </span><span>die</span>("这个后缀是<b>{<span>$hz</span>}</b>,不是充许的文件类型!"<span>);
    }
    
    </span><span>/*</span><span> 也可以通过获取上传文件的MIME类型中的主类型和子类型,来限制文件上传的类型
    list($maintype,$subtype)=explode("/",$_FILES['myfile']['type']);    
      if ($maintype=="text") {   //通过主类型限制不能上传文本文件,例如.txt .html .php等文件
        die('问题: 不能上传文本文件。');
    } </span><span>*/</span>

    <span>//</span><span>判断上传的文件是否为充许大小</span>
    <span>if</span>(<span>$_FILES</span>['myfile']['size'] > <span>$size</span><span> ) {
        </span><span>die</span>("超过了充许的<b>{<span>$size</span>}</b>字节大小"<span>);
    }
    
    </span><span>//</span><span>为了系统安全,也为了同名文件不会被覆盖,上传后将文件名使用系统定义</span>
    <span>$filename</span> = <span>date</span>("YmdHis").<span>rand</span>(100,999).".".<span>$hz</span><span>;
    
    </span><span>//</span><span>判断是否为上传文件</span>
    <span>if</span> (<span>is_uploaded_file</span>(<span>$_FILES</span>['myfile']['tmp_name'<span>])) { 
         </span><span>if</span> (!<span>move_uploaded_file</span>(<span>$_FILES</span>['myfile']['tmp_name'], <span>$path</span>.'/'.<span>$filename</span><span>)) {  
            </span><span>die</span>('问题: 不能将文件移动到指定目录。'<span>);
        }
     }</span><span>else</span><span>{
        </span><span>die</span>("问题: 上传文件{<span>$_FILES</span>['myfile']['name']}不是一个合法文件: "<span>);
    }

    </span><span>//</span><span>如果文件上传成功则输出</span>
    <span>echo</span> "文件{<span>$upfile</span>}上传成功,保存在目录{<span>$path</span>}中,大小为{<span>$_FILES</span>['myfile']['size']}字节";   
ログイン後にコピー

 

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

この章では、ルーティングに関連する次のトピックを学習します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

See all articles