小規模プログラムのアプリケーションが広く普及するにつれて、データを取得するためにバックエンド サーバーと対話する必要がある開発者がますます増えています。最も一般的なビジネス シナリオの 1 つは、ファイルのアップロードです。この記事ではファイルアップロードをミニプログラムで実装するPHPバックグラウンド実装方法を紹介します。
1. ミニ プログラムでのファイル アップロード
ミニ プログラムでのファイル アップロードの実装は、主にミニ プログラム API wx.uploadFile() に依存します。 API は、アップロードするファイル パス、渡す必要があるその他のデータ、アップロードの成功と失敗を表すコールバック関数を含むオプション オブジェクトをパラメータとして受け取ります。
コード例:
wx.uploadFile({ url: 'http://www.example.com/upload.php', filePath: tempFilePath, name: 'file', formData: { 'user': 'test' }, success: function(res){ console.log(res.data) }, fail: function(res){ console.log(res) } })
上記のコードでは、url はアップロードされたファイルがバックグラウンドで受信されるアドレス、filePath はアップロードする必要があるファイル パス、formData はその他です。渡す必要があるデータ。
2. PHP バックグラウンド コードの実装
PHP バックグラウンドではファイルをアップロードする方法が多数ありますが、この記事では主に $_FILES スーパー グローバル変数と Read を使用する 2 つの最も一般的な方法を紹介します。リクエスト本文のデータを直接取得します。
wx.uploadFile() メソッドを使用してファイルをアップロードする場合、$_FILES スーパー グローバル変数をアップロード ファイル情報を取得するための PHP バックグラウンド コード。 $_FILES は、ファイル名、ファイル タイプ、ファイル サイズ、一時ファイル パス、アップロードが成功したかどうかなど、アップロードされたファイル情報にアクセスできる連想配列です。
コード例:
<?php if ($_FILES["file"]["error"] > 0) { echo "Error: " . $_FILES["file"]["error"] . "<br>"; } else { move_uploaded_file($_FILES["file"]["tmp_name"], "uploads/" . $_FILES["file"]["name"]); echo "Upload: " . $_FILES["file"]["name"] . "<br>"; echo "Type: " . $_FILES["file"]["type"] . "<br>"; echo "Size: " . ($_FILES["file"]["size"] / 1024) . " KB<br>"; } ?>
上記のコードでは、まずファイルのアップロードが成功したかどうかを判断し、成功した場合は、ファイルを指定されたディレクトリに移動します。アプレットにファイルをアップロードするときは、name パラメータを file に設定する必要があります。
$_FILES スーパー グローバル変数を使用してアップロードされたファイル情報を取得することに加えて、データを直接読み取ることもできますリクエスト本文データ内。具体的な実装方法は、スーパーグローバル変数php://inputを読み込んでリクエストボディ内のデータを取得し、指定したファイルに保存します。
コード例:
<?php $file = file_get_contents("php://input"); $filePath = "uploads/" . $_GET["filename"]; // 文件保存的路径 file_put_contents($filePath, $file); echo "Upload successfully!"; ?>
上記のコードでは、まず file_get_contents() 関数を使用してリクエスト本文のデータを読み取り、指定されたファイルに書き込みます。ファイルをアップロードするときは、URL を通じてファイル名パラメーターを渡し、ファイルが保存されるパスとファイル名を指定する必要があります。
3. まとめ
ミニプログラムでファイルアップロードを実装するには、バックグラウンドでPHP言語を使用しますが、一般的な実装方法は$_FILESスーパーグローバル変数を使用し、ファイルを直接読み込むことです。リクエスト本文のデータ。上記のコード例を通じて、PHP のミニプログラムでファイルのアップロードを実装する方法を理解できたと思います。
ファイルのアップロードには、ファイルのセキュリティやアップロード サイズの制限などの問題が伴うため、対応するセキュリティ対策と制限をバックグラウンド コードで実装する必要があることに注意してください。この記事がお役に立てば幸いです!
以上がミニプログラムでのファイルアップロードのPHP実装方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。