ホームページ バックエンド開発 PHPチュートリアル ThinkPHP ファイルアップロード class_PHP チュートリアルの再版と共有

ThinkPHP ファイルアップロード class_PHP チュートリアルの再版と共有

Jul 20, 2016 am 11:10 AM
org アップロード 使用 共有 書類 親切

アップロード クラスは、ORG クラス ライブラリ パッケージの Net.UpdateFile クラスを使用します。アップロード クラスの最新バージョンには、次の関数が含まれています (一部の関数は、ThinkPHP システム内の他のクラス ライブラリと組み合わせる必要があります)。アップロード機能

2. バッチアップロードのサポート

4. カスタムパラメータアップロードのサポート

6. アップロードの種類、添付ファイルのサイズ、アップロードのサポートパス定義

7. アップロードされたファイルを保存するためのハッシュまたは日付サブディレクトリをサポートします

9. アップロードされたファイルの名前付けルールをサポートします

10. アップロードされたファイルのハッシュ検証をサポートします

これは、ThinkPHP のアップロード機能を使用する場合の特別な扱いです。たとえば、以下は添付ファイルのアップロードを伴うフォーム送信です:

コードは次のとおりです

コードをコピー


コードは次のとおりです



enctype="multipart/form-data" を Form タグに追加する必要があることに注意してください。ファイルをアップロードする前のフォーム。フォームは現在のモジュールのアップロード操作メソッドに送信されるため、モジュール クラスに次のアップロード メソッドを追加できます:


コードをコピー

Public function Upload(){ import(“ORG .Net.UploadFile");$upload = new UploadFile(); // アップロード クラスをインスタンス化します$upload-> allowExts = array('jpg ', 'gif', 'png', 'jpeg'); // 添付ファイルのアップロード タイプを設定しますif(!$upload ->upload()) { //アップロード エラー メッセージ $this->error($upload->getErrorMsg());}else{ //アップロードが成功し、アップロードされるファイル情報コードは次のとおりです
$upload->maxSize = 3145728; // 添付ファイルのアップロード サイズを設定します$upload->savePath = './Public/Uploads/'; // 添付ファイルを設定しますアップロード ディレクトリ
$info = $upload->getUploadFileInfo();
}
// 添付データを含むフォームデータを保存
$User = M(“User”) // ユーザーオブジェクトをインスタンス化
$User->create( ); // データ オブジェクトを作成します
$User->photo = $info[0]["savename"] // アップロードされた写真を必要に応じて保存します
$User->add();ユーザーデータをデータベースに保存します
$ this->success("データは正常に保存されました!");
}






まず、アップロードクラスをインスタンス化します


コードをコピーします

import("ORG.Net. UploadFile");$upload = new UploadFile(); // アップロード クラスをインスタンス化します

アップロード クラスをインスタンス化した後、いくつかのアップロード属性 (パラメーター) を設定できます:

maxSize: ファイル アップロードの最大ファイル サイズ (バイト単位) デフォルトは -1 で、サイズ制限はありません。

savePath: ファイル保存パス。空白のままにした場合、UPLOAD_PATH 定数で定義されたパスが使用されます。

saveRule: アップロードされたファイルの保存ルールは、パラメーターのない関数名である必要があります。たとえば、時間、uniqid com_create_guid などです。 、などですが、保証する必要があります 生成されるファイル名は一意であり、デフォルトは uniqid です

hashType: アップロードされたファイルのハッシュ検証方法、デフォルトは md5_file です

autoCheck: 添付ファイルを自動的に検出するかどうか、デフォルトは自動検出

uploadReplace: 同じ名前のファイルが上書きされるかどうか

allowExts: アップロードが許可されるファイルのサフィックス (制限がない場合は空白のまま)、配列設定を使用、デフォルトは空の配列

allowTypes: 許可されるファイルの種類アップロードする場合 (制限がない場合は空白のままにします)、配列設定を使用します。デフォルトは空の配列です。

thumb: 画像ファイルのサムネイルを処理する必要があるかどうか。 デフォルトは false です。

thumbMaxWidth: サムネイルの最大幅。複数のサムネイルを区切る場合はカンマを使用します。

thumbMaxHeight: サムネイルの最大の高さを指定します。

thumbPrefix: サムネイルのファイルプレフィックス、デフォルトはthumb_です (複数のサムネイルサイズを設定する場合は、複数のサムネイルを設定してください)。

thumbSuffix: サムネイルのファイル拡張子、デフォルトは空です (複数のサムネイル サイズを設定する場合、サムネイル サイズが大きい場合は、ここで複数の拡張子を設定してください)

thumbPath: サムネイルの保存パス (場合は、サムネイルの保存パス)空白のままにする場合は、ファイルアップロードディレクトリ自体を取得します

thumbFile: サムネイルのファイル名を指定します

thumbRemoveOrigin: サムネイル生成後にサムネイルを削除するかどうか元の画像

autoSub: アップロードされたファイルを保存するためにサブディレクトリを使用するかどうか

subType : サブディレクトリの作成方法、デフォルトはハッシュ、ハッシュまたは日付に設定可能

dateFormat: サブディレクトリモードがdateの場合の日付形式を指定します

hashLevel: デフォルトではサブディレクトリの保存レベルは1階層です。直接設定します。例:

コードは次のとおりです コードをコピー$upload->thumb = true$upload->thumbMaxWidth = “50,200″$upload->thumbMaxHeight = 「50,200」



サムネイルを生成する機能には、Image クラスのサポートが必要です。

アップロードパラメータを設定した後、UploadFile クラスのアップロードメソッドを呼び出して添付ファイルをアップロードできます。失敗した場合は false を返し、アップロードが成功した場合は getErrorMsg メソッドを使用してエラーメッセージを取得します。 getUploadFileInfo 情報リストを呼び出して添付ファイルを正常にアップロードしました。したがって、getUploadFileInfo メソッドの戻り値は、アップロードされた添付ファイル情報を各要素とする配列になります。各添付ファイル情報は、次の情報を記録する配列です:

key: 添付ファイルをアップロードするためのフォームの名前

savepath: アップロードされたファイルの保存パス

name: アップロードされたファイルの元の名前

savename: アップロードされたファイルの名前 保存名

size: アップロードされたファイルのサイズ

type: アップロードされたファイルの MIME タイプ

extension: アップロードされたファイルのサフィックス タイプ

hash: ハッシュ検証アップロードされたファイルの文字列

ファイルが正常にアップロードされたら、これらの添付ファイル情報を渡すことができます。これらの添付ファイル情報は、現在のデータ テーブルや別の添付ファイル データ テーブルへの保存など、他のデータ アクセス操作に使用できます。

複数のファイルをアップロードする必要がある場合は、フォームを変更して

XML/HTMLコード

を次のように入力するだけですコードをコピー

XML/HTMLコードに変更

コードは以下の通りですコードをコピー





マルチの 2 つのメソッドのファイル アップロード クラス-添付ファイルアップロードシステムは自動的に認識できます。


http://www.bkjia.com/PHPjc/444697.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/444697.html技術記事アップロード クラスは、ORG クラス ライブラリ パッケージの Net.UpdateFile クラスを使用します。アップロード クラスの最新バージョンには、次の関数が含まれています (一部の関数は、ThinkPHP システム内の他のクラス ライブラリと組み合わせる必要があります)。 1. 基本的なアップロード関数 2。 ...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

Quark NetdiskをBaidu Netdiskに共有するにはどうすればよいですか? Quark NetdiskをBaidu Netdiskに共有するにはどうすればよいですか? Mar 14, 2024 pm 04:40 PM

Quark Netdisk と Baidu Netdisk は非常に便利なストレージ ツールですが、多くのユーザーはこれら 2 つのソフトウェアが相互運用可能かどうかを疑問に思っています。 Quark NetdiskをBaidu Netdiskに共有するにはどうすればよいですか?このサイトでは、QuarkネットワークディスクファイルをBaiduネットワークディスクに保存する方法をユーザーに詳しく紹介します。 Quark Network Disk から Baidu Network Disk にファイルを保存する方法 方法 1. Quark Network Disk から Baidu Network Disk にファイルを転送する方法を知りたい場合は、まず Quark Network Disk に保存する必要があるファイルをダウンロードして、次に開きますBaidu Network Disk クライアントを起動し、圧縮ファイルを保存するフォルダーを選択し、ダブルクリックしてフォルダーを開きます。 2. フォルダーを開いたら、ウィンドウ左上の「アップロード」をクリックします。 3. コンピュータ上でアップロードする必要がある圧縮ファイルを見つけ、クリックして選択します。

CrystalDiskmarkとはどのようなソフトウェアですか? -crystaldiskmarkの使い方は? CrystalDiskmarkとはどのようなソフトウェアですか? -crystaldiskmarkの使い方は? Mar 18, 2024 pm 02:58 PM

CrystalDiskMark は、シーケンシャルおよびランダムの読み取り/書き込み速度を迅速に測定する、ハード ドライブ用の小型 HDD ベンチマーク ツールです。次に、編集者が CrystalDiskMark と Crystaldiskmark の使用方法を紹介します。 1. CrystalDiskMark の概要 CrystalDiskMark は、機械式ハード ドライブとソリッド ステート ドライブ (SSD) の読み取りおよび書き込み速度とパフォーマンスを評価するために広く使用されているディスク パフォーマンス テスト ツールです。 ). ランダム I/O パフォーマンス。これは無料の Windows アプリケーションで、使いやすいインターフェイスとハード ドライブのパフォーマンスのさまざまな側面を評価するためのさまざまなテスト モードを提供し、ハードウェアのレビューで広く使用されています。

0x80004005 エラー コードが表示された場合の対処方法 エディターは、0x80004005 エラー コードを解決する方法を説明します。 0x80004005 エラー コードが表示された場合の対処方法 エディターは、0x80004005 エラー コードを解決する方法を説明します。 Mar 21, 2024 pm 09:17 PM

パソコン上のフォルダーを削除または解凍するときに、「エラー 0x80004005: 不明なエラー」というダイアログ ボックスが表示されることがあります。この状況はどう解決すればよいでしょうか?エラー コード 0x80004005 が表示される理由は実際にはたくさんありますが、そのほとんどはウイルスによって引き起こされます。DLL を再登録して問題を解決できます。以下では、エディターがエラー コード 0x80004005 の処理体験を説明します。 。一部のユーザーは、コンピュータの使用時にエラー コード 0X80004005 を表示されます。0x80004005 エラーは主に、コンピュータが特定のダイナミック リンク ライブラリ ファイルを正しく登録していないこと、またはファイアウォールがコンピュータとインターネット間の HTTPS 接続を許可していないことが原因で発生します。それでどうですか

foob​​ar2000のダウンロード方法は? -foobar2000の使い方 foob​​ar2000のダウンロード方法は? -foobar2000の使い方 Mar 18, 2024 am 10:58 AM

foob​​ar2000 は、音楽リソースをいつでも聴くことができるソフトウェアです。あらゆる種類の音楽をロスレス音質で提供します。音楽プレーヤーの強化版により、より包括的で快適な音楽体験を得ることができます。その設計コンセプトは、高度なオーディオをコンピュータ上で再生可能 デバイスを携帯電話に移植し、より便利で効率的な音楽再生体験を提供 シンプルでわかりやすく、使いやすいインターフェースデザイン 過度な装飾や煩雑な操作を排除したミニマルなデザインスタイルを採用また、さまざまなスキンとテーマをサポートし、自分の好みに合わせて設定をカスタマイズし、複数のオーディオ形式の再生をサポートする専用の音楽プレーヤーを作成します。過度の音量による聴覚障害を避けるために、自分の聴覚の状態に合わせて調整してください。次は私がお手伝いさせてください

Quark Cloud Disk から Baidu Cloud Disk にファイルを転送するにはどうすればよいですか? Quark Cloud Disk から Baidu Cloud Disk にファイルを転送するにはどうすればよいですか? Mar 14, 2024 pm 02:07 PM

Quark Netdisk と Baidu Netdisk は現在、ファイルの保存に最も一般的に使用されている Netdisk ソフトウェアです。Quark Netdisk 内のファイルを Baidu Netdisk に保存したい場合は、どうすればよいですか?今回は、Quark Network Disk コンピュータから Baidu Network Disk にファイルを転送するためのチュートリアル手順を編集者がまとめたので、その操作方法を見てみましょう。 QuarkネットワークディスクファイルをBaiduネットワークディスクに保存するにはどうすればよいですか? Quark Network Disk から Baidu Network Disk にファイルを転送するには、まず Quark Network Disk から必要なファイルをダウンロードし、次に Baidu Network Disk クライアントでターゲット フォルダーを選択して開きます。次に、Quark Cloud Disk からダウンロードしたファイルを Baidu Cloud Disk クライアントによって開かれたフォルダーにドラッグ アンド ドロップするか、アップロード機能を使用してファイルを Baidu Cloud Disk に追加します。アップロードが完了したら、Baidu Cloud Disk にファイルが正常に転送されたかどうかを必ず確認してください。それでおしまい

NetEase Cloud Music を WeChat Moments に共有する方法_NetEase Cloud Music を WeChat Moments に共有するチュートリアル NetEase Cloud Music を WeChat Moments に共有する方法_NetEase Cloud Music を WeChat Moments に共有するチュートリアル Mar 25, 2024 am 11:41 AM

1. まず、NetEase Cloud Music に入り、ソフトウェアのホームページ インターフェイスをクリックして、曲の再生インターフェイスに入ります。 2. 次に、曲の再生インターフェイスで、下の図の赤いボックスに示すように、右上隅にある共有機能ボタンを見つけて、クリックして共有チャンネルを選択し、共有チャンネルで「共有先」オプションをクリックします。下部にある [WeChat Moments] を選択すると、コンテンツを WeChat Moments に共有できます。

hiberfil.sys ファイルとは何ですか? hiberfil.sysは削除できますか? hiberfil.sys ファイルとは何ですか? hiberfil.sysは削除できますか? Mar 15, 2024 am 09:49 AM

最近、多くのネチズンが編集者に「hiberfil.sys ファイルとは何ですか?」と尋ねました。 hiberfil.sys は C ドライブのスペースを多く消費し、削除される可能性がありますか?エディターは、hiberfil.sys ファイルを削除できることを通知します。以下で詳細を見てみましょう。 hiberfil.sys は Windows システムの隠しファイルであり、システム休止状態ファイルでもあります。通常、C ドライブのルート ディレクトリに保存され、そのサイズはシステムに搭載されているメモリのサイズと同等です。このファイルはコンピュータが休止状態になっているときに使用され、リカバリ中に以前の状態にすばやく復元できるように、現在のシステムのメモリ データが含まれています。そのサイズはメモリ容量と等しいため、より多くのハードドライブスペースを占有する可能性があります。冬休み

Baidu Netdisk アプリの使用方法 Baidu Netdisk アプリの使用方法 Mar 27, 2024 pm 06:46 PM

クラウド ストレージは今日、私たちの日常生活や仕事に欠かせない部分になっています。中国有数のクラウド ストレージ サービスの 1 つである Baidu Netdisk は、強力なストレージ機能、効率的な伝送速度、便利な操作体験により多くのユーザーの支持を得ています。また、重要なファイルのバックアップ、情報の共有、オンラインでのビデオの視聴、または音楽の聴きたい場合でも、Baidu Cloud Disk はニーズを満たすことができます。しかし、Baidu Netdisk アプリの具体的な使用方法を理解していないユーザーも多いため、このチュートリアルでは Baidu Netdisk アプリの使用方法を詳しく紹介します。まだ混乱しているユーザーは、この記事に従って詳細を学ぶことができます。 Baidu Cloud Network Disk の使用方法: 1. インストール まず、Baidu Cloud ソフトウェアをダウンロードしてインストールするときに、カスタム インストール オプションを選択してください。

See all articles