ホームページ  >  記事  >  バックエンド開発  >  実践的なPHPファイルアップロードコードのデモ_PHPチュートリアル

実践的なPHPファイルアップロードコードのデモ_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-15 13:26:55724ブラウズ

PHPの長い開発期間を経て、多くのユーザーがPHPに慣れてきました。ここでPHPファイルのアップロードコードを公開し、みんなと議論します。 PHP 自体はシンプルですが強力な言語です。 PHP 言語には、強力な文字列や配列の処理機能など​​のコア機能があり、オブジェクト指向プログラミング (PHP5 以降) のサポートが大幅に向上しています。標準およびオプションの拡張モジュールを使用することで、PHP アプリケーションは MySQL や Oracle などの十数のデータベースに接続し、描画、PDF ファイルの作成、XML ファイルの作成と解析を行うことができます。 C 言語を使用して独自の PHP 拡張モジュールを作成することもできます。

たとえば、既存のコードベースで PHP インターフェイス関数を提供します。 Windows で PHP を実行したり、COM を使用して Word や Excel などの他の Windows アプリケーションを制御したり、ODBC を使用してデータベースに接続したりすることもできます。中国では、PHP はかつて Microsoft の ASP と歩調を合わせており、一般的に使用されているネットワーク プログラミング言語でした。 ASP3.0はすでにMicrosoftによって放棄されており、今後は更新されないので、PHPももうすぐなくなるのではないかと思っている人もいるかもしれません。しかし、事実はまったく逆で、PHP は ASP を大きく引き離して急速に発展しているだけでなく、徐々にインターネット上で最も広く使用され、人気のある言語になりつつあります。

PHPアップロードファイルコード

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><</SPAN><SPAN class=tag-name>html</SPAN><SPAN class=tag>></span><span class="tag"><</SPAN><SPAN class=tag-name>head</SPAN><SPAN class=tag>></span><span> </span></span></li>
<li class="">
<span></span><span class="tag"><</SPAN><SPAN class=tag-name>title</SPAN><SPAN class=tag>></span><span>上载文件表单</span><span class="tag"></</SPAN><SPAN class=tag-name>title</SPAN><SPAN class=tag>></span><span class="tag"></</SPAN><SPAN class=tag-name>head</SPAN><SPAN class=tag>></span><span>   </span>
</li>
<li class="alt">
<span></span><span class="tag"><</SPAN><SPAN class=tag-name>body</SPAN><SPAN class=tag>></span><span>   </span>
</li>
<li class="">
<span></span><span class="tag"><</SPAN><SPAN class=tag-name>form</SPAN><SPAN> </SPAN><SPAN class=attribute>enctype</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>"multipart/form-data"</SPAN><SPAN> </SPAN><SPAN class=attribute>action</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>""</SPAN><SPAN> </SPAN><SPAN class=attribute>method</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>"post"</SPAN><SPAN class=tag>></span><span>   </span>
</li>
<li class="alt">
<span>请选择文件: </span><span class="tag"><</SPAN><SPAN class=tag-name>br</SPAN><SPAN class=tag>></span><span> </span>
</li>
<li class="">
<span></span><span class="tag"><</SPAN><SPAN class=tag-name>input</SPAN><SPAN> </SPAN><SPAN class=attribute>name</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>"upload_file"</SPAN><SPAN> </SPAN><SPAN class=attribute>type</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>"file"</SPAN><SPAN class=tag>></span><span class="tag"><</SPAN><SPAN class=tag-name>br</SPAN><SPAN class=tag>></span><span> </span>
</li>
<li class="alt">
<span></span><span class="tag"><</SPAN><SPAN class=tag-name>input</SPAN><SPAN> </SPAN><SPAN class=attribute>type</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>"submit"</SPAN><SPAN> </SPAN><SPAN class=attribute>value</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>"上传文件"</SPAN><SPAN class=tag>></span><span>   </span>
</li>
<li class="">
<span></span><span class="tag"></</SPAN><SPAN class=tag-name>form</SPAN><SPAN class=tag>></span><span>   </span>
</li>
<li class="alt">
<span></span><span class="tag"></</SPAN><SPAN class=tag-name>body</SPAN><SPAN class=tag>></span><span> </span>
</li>
<li class="">
<span></span><span class="tag"></</SPAN><SPAN class=tag-name>html</SPAN><SPAN class=tag>></span><span>   </span>
</li>
<li class="alt">
<span></span><span class="tag"><?</SPAN><SPAN> </SPAN></SPAN><LI class=""><SPAN>$</SPAN><SPAN class=attribute>upload_file</SPAN><SPAN>=$_FILES['upload_file']['tmp_name'];  </SPAN></SPAN><LI class=alt><SPAN>$</SPAN><SPAN class=attribute>upload_file_name</SPAN><SPAN>=$_FILES['upload_file']['name'];  </SPAN></SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN>if($upload_file){  </SPAN><LI class=""><SPAN>$</SPAN><SPAN class=attribute>file_size_max</SPAN><SPAN> = </SPAN><SPAN class=attribute-value>1000</SPAN><SPAN>*1000;// 1M限制文件上传最大容量(bytes)  </SPAN></SPAN><LI class=alt><SPAN>$</SPAN><SPAN class=attribute>store_dir</SPAN><SPAN> = </SPAN><SPAN class=attribute-value>"d:/"</SPAN><SPAN>;// 上传文件的储存位置  </SPAN></SPAN><LI class=""><SPAN>$</SPAN><SPAN class=attribute>accept_overwrite</SPAN><SPAN> = </SPAN><SPAN class=attribute-value>1</SPAN><SPAN>;//是否允许覆盖相同文件  </SPAN></SPAN><LI class=alt><SPAN>// 检查文件大小  </SPAN><LI class=""><SPAN>if ($upload_file_size </SPAN><SPAN class=tag>></span><span> $file_size_max) {  </span>
</li>
<li class="alt"><span>echo "对不起,你的文件容量大于规定";  </span></li>
<li class=""><span>exit;  </span></li>
<li class="alt"><span>}  </span></li>
<li class=""><span> </span></li>
<li class="alt"><span>// 检查读写文件  </span></li>
<li class=""><span>if (file_exists($store_dir . $upload_file_name) && !$accept_overwrite) {  </span></li>
<li class="alt"><span>Echo "存在相同文件名的文件";  </span></li>
<li class=""><span>exit;  </span></li>
<li class="alt"><span>}  </span></li>
<li class=""><span> </span></li>
<li class="alt"><span>//复制文件到指定目录  </span></li>
<li class=""><span>if (!move_uploaded_file($upload_file,$store_dir.$upload_file_name)) {  </span></li>
<li class="alt"><span>echo "复制文件失败";  </span></li>
<li class=""><span>exit;  </span></li>
<li class="alt"><span>}  </span></li>
<li class=""><span> </span></li>
<li class="alt"><span>}  </span></li>
<li class=""><span> </span></li>
<li class="alt">
<span>Echo "</span><span class="tag"><</SPAN><SPAN class=tag-name>p</SPAN><SPAN class=tag>></span><span>你上传了文件:";  </span>
</li>
<li class=""><span>echo$_FILES['upload_file']['name'];  </span></li>
<li class="alt">
<span>echo "</span><span class="tag"><</SPAN><SPAN class=tag-name>br</SPAN><SPAN class=tag>></span><span>";  </span>
</li>
<li class=""><span>//客户端机器文件的原名称。   </span></li>
<li class="alt"><span> </span></li>
<li class=""><span>Echo "文件的 MIME 类型为:";  </span></li>
<li class="alt"><span>echo $_FILES['upload_file']['type'];  </span></li>
<li class=""><span>//文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。   </span></li>
<li class="alt">
<span>echo "</span><span class="tag"><</SPAN><SPAN class=tag-name>br</SPAN><SPAN class=tag>></span><span>";  </span>
</li>
<li class=""><span> </span></li>
<li class="alt"><span>Echo "上传文件大小:";  </span></li>
<li class=""><span>echo $_FILES['upload_file']['size'];  </span></li>
<li class="alt"><span>//已上传文件的大小,单位为字节。   </span></li>
<li class="">
<span>echo "</span><span class="tag"><</SPAN><SPAN class=tag-name>br</SPAN><SPAN class=tag>></span><span>";  </span>
</li>
<li class="alt"><span> </span></li>
<li class=""><span>Echo "文件上传后被临时储存为:";  </span></li>
<li class="alt"><span>echo $_FILES['upload_file']['tmp_name'];  </span></li>
<li class=""><span>//文件被上传后在服务端储存的临时文件名。   </span></li>
<li class="alt">
<span>echo "</span><span class="tag"><</SPAN><SPAN class=tag-name>br</SPAN><SPAN class=tag>></span><span>";  </span>
</li>
<li class=""><span> </span></li>
<li class="alt"><span> </span></li>
<li class="">
<span>$</span><span class="attribute">Erroe</span><span>=$_FILES['upload_file']['error'];  </span>
</li>
<li class="alt"><span>switch($Erroe){  </span></li>
<li class=""><span>case 0:  </span></li>
<li class="alt"><span>Echo "上传成功"; break;  </span></li>
<li class=""><span>case 1:  </span></li>
<li class="alt"><span>Echo "上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值."; break;  </span></li>
<li class=""><span>case 2:  </span></li>
<li class="alt"><span>Echo "上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。";break;  </span></li>
<li class=""><span>case 3:  </span></li>
<li class="alt"><span>Echo "文件只有部分被上传";break;  </span></li>
<li class=""><span>case 4:  </span></li>
<li class="alt"><span>Echo "没有文件被上传";break;  </span></li>
<li class=""><span>}  </span></li>
<li class="alt">
<span></span><span class="tag">?></span><span> </span>
</li>
</ol>


上記は詳細なPHPファイルアップロードコードです。皆様のお役に立てれば幸いです。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446559.html技術記事 PHP の長い開発期間を経て、多くのユーザーが PHP をよく知っています。ここで PHP ファイルのアップロード コードを公開し、皆さんと議論します。 PHP 自体はシンプルですが強力な言語です。 PHP言語...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。