目次
php上传功能集后缀名判断和随机命名,php上传后缀命名
ホームページ php教程 php手册 php上传功能集后缀名判断和随机命名,php上传后缀命名

php上传功能集后缀名判断和随机命名,php上传后缀命名

Jun 13, 2016 am 08:54 AM
重命名

php上传功能集后缀名判断和随机命名,php上传后缀命名

form.php

<span><</span><span>html</span><span>></span>
<span><</span><span>head</span><span>></span>
    <span><</span><span>meta </span><span>http-equiv</span><span>="content-type"</span><span> content</span><span>="text/html"</span><span> charset</span><span>="utf-8"</span><span>></span>
    <span><</span><span>title</span><span>></span>Upload Image<span></</span><span>title</span><span>></span>
<span></</span><span>head</span><span>></span>
<span><</span><span>body</span><span>></span>
<span><</span><span>form </span><span>method</span><span>="post"</span><span> action</span><span>="upload.php"</span><span> enctype</span><span>="multipart/form-data"</span><span>></span>
    <span><</span><span>input </span><span>type</span><span>="hidden"</span><span> name</span><span>="MAX_FILE_SEZE"</span><span> value</span><span>="2000000"</span><span>></span>
    <span><</span><span>input </span><span>type</span><span>="file"</span><span> name</span><span>="file"</span><span> value</span><span>="view"</span><span>></span>
    <span><</span><span>input </span><span>type</span><span>="submit"</span><span> value</span><span>="upload"</span><span> name</span><span>="B1"</span><span>></span>
<span></</span><span>form</span><span>></span>
<span></</span><span>body</span><span>></span>
<span></</span><span>html</span><span>></span>
ログイン後にコピー

upload.php

<?<span>php
</span><span>include</span>("check.php"); <span>//</span><span> 引入自定义函数文件</span>
<span>$type</span> = <span>array</span>("jpg", "gif", "bmp", "jpeg", "png"<span>);
</span><span>//</span><span> 判断上传文件类型</span>
<span>$fileext</span> = <span>strtolower</span>(fileext(<span>$_FILES</span>['file']['name'<span>]));
</span><span>$uploadfilename</span> = random(8<span>);
</span><span>if</span>(<span>in_array</span>(<span>$fileext</span>, <span>$type</span><span>)){
    </span><span>$filename</span> = <span>explode</span>(".", <span>$_FILES</span>['file']['name'<span>]);

        </span><span>if</span>(<span>is_uploaded_file</span>(<span>$_FILES</span>['file']['tmp_name'<span>])){
</span><span>//</span><span>        echo $_FILES['file']['tmp_name'];</span>
        <span>$flag</span> = <span>move_uploaded_file</span>(<span>$_FILES</span>['file']['tmp_name'], "/Library/WebServer/Documents/test/".<span>$uploadfilename</span>.".".<span>$fileext</span><span>);
        </span><span>if</span>(<span>$flag</span><span>){
            </span><span>echo</span> "上传成功!"<span>;
        }</span><span>else</span><span>{
            </span><span>echo</span> "Error."<span>;
        }
        </span><span>echo</span> "<a href='javascript:history.go(-1)'>Back</a>"<span>;
    }
}</span>
ログイン後にコピー

check.php

<?<span>php
</span><span>header</span>("Content-type:text/html;charset=utf8"<span>);
</span><span>//</span><span> 获取文件后缀名函数</span>
<span>function</span> fileext(<span>$filename</span><span>){
    </span><span>$sTemp</span> = <span>strrchr</span>(<span>$filename</span>, "."<span>);
    </span><span>return</span> <span>substr</span>(<span>$sTemp</span>, 1<span>);
}
</span><span>function</span> fileext2(<span>$filename</span><span>){
    </span><span>$sTemp</span> = <span>explode</span>(".", <span>$filename</span><span>);
    </span><span>return</span> <span>$sTemp</span>[<span>count</span>(<span>$sTemp</span>)-1<span>];

}
</span><span>//</span><span> 生成随机文件名函数</span>
<span>function</span> random(<span>$length</span><span>){
    </span><span>$captchaSource</span> = "0123456789abcdefghijklmnopqrstuvwxyz这是一个随机打印输出字符串的例子"<span>;

    </span><span>$captchaResult</span> = "2015"; <span>//</span><span> 随机数返回值</span>
    <span>$captchaSentry</span> = ""; <span>//</span><span> 随机数中间变量</span>
    <span>for</span>(<span>$i</span>=0;<span>$i</span><<span>$length</span>;<span>$i</span>++<span>){
        </span><span>$n</span> = <span>rand</span>(0, 35); <span>#</span><span>strlen($captchaSource));</span>
        <span>if</span>(<span>$n</span> >= 36<span>){
            </span><span>$n</span> = 36 + <span>ceil</span>((<span>$n</span>-36)/3) * 3<span>;
            </span><span>$captchaResult</span> .= <span>substr</span>(<span>$captchaSource</span>, <span>$n</span>, 3<span>);
        }</span><span>else</span><span>{
            </span><span>$captchaResult</span> .= <span>substr</span>(<span>$captchaSource</span>, <span>$n</span>, 1<span>);
        }
    }
    </span><span>return</span> <span>$captchaResult</span><span>;
}
</span>?>
ログイン後にコピー

将三个文件整合成一个:

<?<span>php
</span><span>//</span><span> 获取文件后缀名函数</span>
<span>function</span> fileext(<span>$filename</span><span>){
    </span><span>$sTemp</span> = <span>strrchr</span>(<span>$filename</span>, "."<span>);
    </span><span>return</span> <span>substr</span>(<span>$sTemp</span>, 1<span>);
}
</span><span>function</span> fileext2(<span>$filename</span><span>){
    </span><span>$sTemp</span> = <span>explode</span>(".", <span>$filename</span><span>);
    </span><span>return</span> <span>$sTemp</span>[<span>count</span>(<span>$sTemp</span>)-1<span>];

}
</span><span>//</span><span> 生成随机文件名函数</span>
<span>function</span> random(<span>$length</span><span>){
    </span><span>$captchaSource</span> = "0123456789abcdefghijklmnopqrstuvwxyz这是一个随机打印输出字符串的例子"<span>;

    </span><span>$captchaResult</span> = "2015"; <span>//</span><span> 随机数返回值</span>
    <span>$captchaSentry</span> = ""; <span>//</span><span> 随机数中间变量</span>
    <span>for</span>(<span>$i</span>=0;<span>$i</span><<span>$length</span>;<span>$i</span>++<span>){
        </span><span>$n</span> = <span>rand</span>(0, 35); <span>#</span><span>strlen($captchaSource));</span>
        <span>if</span>(<span>$n</span> >= 36<span>){
            </span><span>$n</span> = 36 + <span>ceil</span>((<span>$n</span>-36)/3) * 3<span>;
            </span><span>$captchaResult</span> .= <span>substr</span>(<span>$captchaSource</span>, <span>$n</span>, 3<span>);
        }</span><span>else</span><span>{
            </span><span>$captchaResult</span> .= <span>substr</span>(<span>$captchaSource</span>, <span>$n</span>, 1<span>);
        }
    }
    </span><span>return</span> <span>$captchaResult</span><span>;
}

</span><span>$type</span> = <span>array</span>("jpg", "gif", "bmp", "jpeg", "png"<span>);
</span><span>//</span><span> 判断上传文件类型</span>
<span>$fileext</span> = <span>strtolower</span>(fileext(<span>$_FILES</span>['file']['name'<span>]));
</span><span>$uploadfilename</span> = random(8<span>);
</span><span>if</span>(<span>in_array</span>(<span>$fileext</span>, <span>$type</span><span>)){
    </span><span>$filename</span> = <span>explode</span>(".", <span>$_FILES</span>['file']['name'<span>]);

    </span><span>if</span>(<span>is_uploaded_file</span>(<span>$_FILES</span>['file']['tmp_name'<span>])){
</span><span>//</span><span>        echo $_FILES['file']['tmp_name'];</span>
        <span>$flag</span> = <span>move_uploaded_file</span>(<span>$_FILES</span>['file']['tmp_name'], "/Library/WebServer/Documents/test/".<span>$uploadfilename</span>.".".<span>$fileext</span><span>);
        </span><span>if</span>(<span>$flag</span><span>){
            </span><span>echo</span> "上传成功!"<span>;
        }</span><span>else</span><span>{
            </span><span>echo</span> "Error."<span>;
        }
        </span><span>echo</span> "<a href='javascript:history.go(-1)'>Back</a>"<span>;
    }
}

</span>?>

<html>
<head>
    <meta http-equiv="content-type" content="text/html" charset="utf-8">
    <title>Upload Image</title>
</head>
<body>
<form method="post" action="" enctype="multipart/form-data">
    <input type="hidden" name="MAX_FILE_SEZE" value="2000000">
    <input type="file" name="file" value="view">
    <input type="submit" value="upload" name="B1">
</form>
</body>
</html>
ログイン後にコピー

 

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Windows 11 では、ドライバーはこのデバイスに ene.sys をロードできません Windows 11 では、ドライバーはこのデバイスに ene.sys をロードできません May 05, 2023 am 09:13 AM

多くの Windows 11 ユーザーは、「このデバイス (ene.sys) にドライバーを読み込むことができませんでした」というエラー メッセージが表示され、ドライバーがシステムに読み込めなくなり、脆弱としてマークされます。ただし、この問題は主に PC を Windows 11 にアップグレードしたユーザーから報告されています。このエラーは、システムのオペレーティング システムのアップデートの問題により破損したドライバーとファイルに密接に関連しています。アップデート後に Windows 11 コンピューターの電源を入れるたびにこの「ene.sys」エラーが発生する場合は、この記事を読み続けてください。ここでは、PC でこのエラーが発生した場合に使用できるトラブルシューティング方法をいくつか紹介します。解決策 1 – オプションのアップデートをインストールする ステップ 1。 Windows+Rグループを使用する

Windows 11 でプリンターの名前をすばやく変更する 4 つの方法 Windows 11 でプリンターの名前をすばやく変更する 4 つの方法 Sep 11, 2023 pm 03:26 PM

オフィスに多数のプリンターがある場合、プリンターのリストが長くなり、作業が面倒になることがあります。さらに、複数のプリンタは通常、似たような名前を意味するため、少し混乱する可能性があります。無限のリストをスクロールしながら、間違ったプリンタに印刷ジョブを送信してしまうことは絶対に避けてください。幸いなことに、これらの問題はすべて、以下で説明する簡単な名前変更テクニックで解決できます。 Windows 11 でプリンターの名前を変更するにはどうすればよいですか? 1. 設定アプリを使用してキーをタップし、[設定] をクリックします。 Windows では、[Bluetooth とデバイス] をクリックし、[プリンターとスキャナー] を選択します。名前を変更するプリンターを選択します。 「プリンターのプロパティ」をクリックします。 「全般」タブに移動し、キーを押します。

システム起動時に Explorer.exe が起動しない [修正] システム起動時に Explorer.exe が起動しない [修正] Jun 03, 2023 am 08:31 AM

最近、多くの Windows ユーザーが Windows システムの重大な問題に遭遇し始めています。問題は、システムのロード後に Explorer.exe が起動できず、ユーザーがファイルやフォルダーを開けないことです。ただし、Windows ユーザーは場合によってはコマンド プロンプトを使用して Windows エクスプローラーを手動で開くことができますが、これはシステムを再起動するたびに、またはシステム起動後に実行する必要があります。これは問題となる可能性があり、以下に説明する要因が原因です。システムファイルが破損しています。高速スタートアップ設定を有効にします。ディスプレイドライバーが古いか問題があります。システム内の一部のサービスに変更が加えられました。変更されたレジストリ ファイル。上記のすべての要素を念頭に置いて、ユーザーに確実に役立ついくつかの要素を考え出しました。

win10でファイルのサフィックスの名前を一括変更する方法 win10でファイルのサフィックスの名前を一括変更する方法 Jul 06, 2023 pm 07:37 PM

win10でファイルのサフィックスの名前をバッチ変更する方法は?現在、多くのユーザーがWin10システムを使用しており、通常コンピューターを使用するとき、ショートカットキーを使用すると操作がより便利になるため、多くのショートカットキーを使用することがよくありますが、ファイルの名前を一括で変更するにはどうすればよいですか?以下、エディターがWin10でファイル名を一括変更する操作を紹介します。 Win10 でファイルの名前を一括変更する方法 1. 名前を変更したいファイルをすべて選択します。 2. 選択したファイルを右クリックし、「名前の変更」を選択します。 3. ファイルの名前が変更されると、他のファイルにも順番にシリアル番号が付けられます。方法は非常に簡単ですが、修正する際にはファイルの順番や修正後のサンプルファイルの並び替え位置に注意する必要があります。シリアル番号は、変更されたサンプル ファイルから始まります。

Windows 10/11 での CS:GO のクラッシュ、フリーズ、黒い画面の問題 Windows 10/11 での CS:GO のクラッシュ、フリーズ、黒い画面の問題 Apr 30, 2023 pm 06:40 PM

PC 上の他のゲームと同様に、Counter-Strike: Global Offensive は起動時にクラッシュ、フリーズ、または黒い画面でスタックする可能性があります。 Counter-Strike は市場で低リソースの fps ゲームの 1 つであり、Tudou PC でも実行できます。 CSGO は CPU 指向のゲームですが、システム GPU も重要な役割を果たします。黒い画面の問題は GPU の問題に関連しています。問題を解決するには、次の簡単な解決策に従ってください。解決策 1 – 互換性をオフにする Windows 8 または 7 で互換モードでゲームを実行している場合は、互換性をオフにします。 CSGO は Windows のすべてのバージョン (WindowsXP 以降) で動作します。

名前変更のショートカットキーとは何ですか? 名前変更のショートカットキーとは何ですか? 名前変更のショートカットキーとは何ですか? 名前変更のショートカットキーとは何ですか? Feb 22, 2024 pm 02:50 PM

名前を変更するショートカット キーは F2 です。分析 1 名前変更のショートカット キーは F2 です 2 ファイルまたはフォルダーの名前を変更する場合は、ファイルを選択した後に F2 キーを押し、直接変更して Enter キーを押します。 3 場合によっては、マウスを使用してファイルを選択し、右クリックして [名前の変更] を選択し、変更が完了したら Enter キーを押すこともできます。 4 ショートカット キーは、特定のコマンドをすばやく完了するためのキーボード上の特別なキーの組み合わせまたはシーケンスを指し、これにより作業効率が効果的に向上します。補足: ショートカット キーとは何ですか? 1 ショートカット キーは、ホット キーとも呼ばれ、特定のキー、キー シーケンス、またはキーの組み合わせによって操作を完了することを指します。マウスの代わりにショートカット キーを使用していくつかの作業を行うことができます。キーボード ショートカットを使用して、スタート メニュー、デスクトップ、メニュー、ダイアログ ボックスを開いたり閉じたり、移動したりすることができます。

Windows 11/10でファイルの種類を変更する方法 Windows 11/10でファイルの種類を変更する方法 Oct 27, 2023 pm 02:13 PM

ファイルの種類(拡張子)の変更は簡単な作業です。ただし、単純なことでも難しい場合があり、ファイル拡張子の変更もその 1 つです。単純な間違いによってファイルが壊れて操作不能になる可能性があるため、ファイルの種類を変更するときは細心の注意を払う必要があります。そこで、Windows 11、10でファイルの種類を変更するさまざまな方法について説明しました。 Windows 11、10 でファイルの種類を変更する方法 これを行うには 2 つの方法があります。直接 GUI 方式 (ファイル エクスプローラー) を使用することも、ターミナルからファイルの種類を変更することもできます。方法 1 – ファイル エクスプローラーを使用する 方法 2 – CMD ターミナルを使用する 方法 1 – ファイル タイプを直接変更する ファイル エクスプローラーでファイル タイプを上下から直接変更できます。

PHP 関数の紹介 - rename(): ファイルまたはディレクトリの名前を変更する PHP 関数の紹介 - rename(): ファイルまたはディレクトリの名前を変更する Jul 25, 2023 pm 12:10 PM

PHP 関数の紹介 - rename(): ファイルまたはディレクトリの名前変更 はじめに: PHP では、rename() 関数を使用してファイルまたはディレクトリの名前を変更します。ファイルまたはディレクトリの名前を簡単に変更する方法を提供します。単一のファイルであっても、ディレクトリ全体であっても、この関数を使用して名前変更操作を実行できます。名前変更プロセスは、ソース ファイルまたはディレクトリの名前とターゲット名を指定することで簡単に実行できます。構文: boolrename(string$source,str

See all articles