ミニプログラムでのファイルアップロードのPHP実装方法

PHPz
リリース: 2023-06-02 08:44:01
オリジナル
1646 人が閲覧しました

小規模プログラムのアプリケーションが広く普及するにつれて、データを取得するためにバックエンド サーバーと対話する必要がある開発者がますます増えています。最も一般的なビジネス シナリオの 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 つの最も一般的な方法を紹介します。リクエスト本文のデータを直接取得します。

  1. $_FILES スーパー グローバル変数を使用する

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 に設定する必要があります。

  1. リクエスト本文のデータを直接読み取る

$_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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート