PHP ファイルのアップロードを効率的に行う方法を教えます_PHP チュートリアル

WBOY
リリース: 2016-07-15 13:26:59
オリジナル
810 人が閲覧しました

PHP の長い開発期間を経て、多くのユーザーが PHP をよく知っています。ここで私の個人的な理解を述べ、皆さんと議論します。 PHP は、動的な WEB ページを作成するために使用されるサーバー側スクリプト言語です。 ASP や ColdFusion と同様に、ユーザーは PHP と HTML を組み合わせて WEB ページを作成できます。訪問者がページを参照すると、サーバーはまずページ内の PHP コマンドを処理し、次に処理結果を HTML コンテンツとともに送信します。ブラウザにアクセスします。

しかし、ASP や ColdFusion とは異なり、PHP は優れたクロスプラットフォーム互換性を備えたオープン ソース プログラムです。ユーザーは、Windows NT システムおよび多くのバージョンの Unix システム上で PHP を実行でき、Apache サーバーの組み込みモジュールまたは CGI プログラムとして PHP を実行できます。 WEBページの表示内容を細かく制御できるほか、PHPを使用してHTTPヘッダーを送信することもできます。ユーザーは、PHP を通じて Cookie を設定し、ユーザー ID を管理し、ユーザーの閲覧ページをリダイレクトできます。 PHP は非常に強力なデータベース サポート機能を備えており、現在普及しているほぼすべてのデータベース システムにアクセスできます。さらに、PHP を複数の外部ライブラリと統合して、PDF ファイルの生成など、より実用的な機能をユーザーに提供できます。

WEBページ上でPHPのコマンドコードを直接入力できるため、特別な開発環境は必要ありません。 WEB ページでは、すべての PHP コードは「」内に配置されます。さらに、ユーザーは などのフォームの使用を選択できます。 PHP エンジンは、ページ内の PHP 区切り文字の間にあるすべてのコードを自動的に識別して処理します。

PHP スクリプト言語の文法構造は、C 言語や Perl 言語の文法スタイルと非常に似ています。ユーザーは変数を使用する前に宣言する必要はありません。 PHP を使用して配列を作成するプロセスも非常に簡単です。 PHP には基本的なオブジェクト指向コンポーネント関数もあり、ユーザーが作成したコードを効果的に整理してカプセル化することが非常に容易になります。ここではPHPアップロードに関する問題を紹介したいと思います。

例 1. ファイル PHP アップロードを有効にする

詳細については、関数 is_uploaded_file() および move_uploaded_file() を確認してください。次の例では、フォームによって提供されるファイルのアップロードを処理します。

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><?</SPAN><SPAN class=tag-name>php</SPAN><SPAN> </SPAN></SPAN><LI class=""><SPAN>// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead  </SPAN><LI class=alt><SPAN>// of $_FILES.  </SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN>$</SPAN><SPAN class=attribute>uploaddir</SPAN><SPAN> = </SPAN><SPAN class=attribute-value>'/var/www/uploads/'</SPAN><SPAN>;  </SPAN></SPAN><LI class=""><SPAN>$</SPAN><SPAN class=attribute>uploadfile</SPAN><SPAN> = $uploaddir . basename($_FILES['userfile']['name']);  </SPAN></SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN>echo '</SPAN><SPAN class=tag><</SPAN><SPAN class=tag-name>pre</SPAN><SPAN class=tag>></span><span>';  </span></span></li>
<li class="alt"><span>if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {  </span></li>
<li class=""><span>   echo "File is valid, and was successfully uploaded.n";  </span></li>
<li class="alt"><span>} else {  </span></li>
<li class=""><span>   echo "Possible file upload attack!n";  </span></li>
<li class="alt"><span>}  </span></li>
<li class=""><span> </span></li>
<li class="alt"><span>echo 'Here is some more debugging info:';  </span></li>
<li class=""><span>print_r($_FILES);  </span></li>
<li class="alt"><span> </span></li>
<li class="">
<span>print "</span><span class="tag"></</SPAN><SPAN class=tag-name>pre</SPAN><SPAN class=tag>></span><span>";  </span>
</li>
<li class="alt"><span> </span></li>
<li class="">
<span></span><span class="tag">?></span><span> </span>
</li>
</ol>
ログイン後にコピー

PHP でアップロードされたファイルを受け入れるスクリプトは、次にファイルに対してどのような操作を行うかを決定するために、論理的に必要なチェックを実装する必要があります。たとえば、$_FILES['userfile']['size'] 変数を使用して大きすぎるまたは小さすぎるファイルを除外したり、$_FILES['userfile']['type'] 変数を使用してファイル タイプと特定の規格が一致しないファイルは除外されますが、この値はクライアントによって完全に制御され、PHP 側ではチェックされないため、これは一連のチェックの最初のステップとしてのみ考慮してください。 PHP 4.2.0 以降では、$_FILES['userfile']['error'] 変数を使用して、さまざまなエラー コードに基づいて次のステップを計画することもできます。いずれの場合も、ファイルを一時ディレクトリから削除するか、別の場所に移動してください。

フォームでアップロードされたファイルが選択されていない場合、PHP 変数 $_FILES['userfile']['size'] の値は 0 になり、$_FILES['userfile']['tmp_name'] は空になります。ファイルが移動または名前変更されていない場合、そのファイルはフォーム要求の最後に削除されます。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446565.html技術記事 PHP は長い間開発されてきたため、多くのユーザーが PHP についてよく知っています。ここで私の個人的な理解を述べ、皆さんと議論します。 PHP は動的な WEB ページを作成するためのサーバーサイド スクリプトです...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!