ホームページ >PHPフレームワーク >Laravel >ThinkPHP フレームワークのアップロード ディレクトリを設定する方法について話しましょう。

ThinkPHP フレームワークのアップロード ディレクトリを設定する方法について話しましょう。

PHPz
PHPzオリジナル
2023-04-21 10:10:21952ブラウズ

ThinkPHP フレームワークを使用してファイルをアップロードする場合、ファイルをアップロードするためのディレクトリを設定する必要があります。アップロードされたファイルのディレクトリ設定により、アップロードされたファイルが当社の規制に従って確実に保存されるため、ファイルの管理と保守が容易になります。

ThinkPHP フレームワークのアップロード ディレクトリの設定方法を紹介します。

  1. 構成ファイルの設定

ThinkPHP フレームワークでは、アップロード ディレクトリの設定をアプリケーションの構成ファイルで設定できます。アプリケーションの構成ファイル (通常は config ディレクトリ内の config.php または app.php) を開き、「file_upload_path」またはその他の対応するパラメーターを見つけて、その値を必要なアップロード ディレクトリ パスに変更します。

例:

// config.php
return [
    // ...
    'file_upload_path' => './uploads/', // 上传目录设置
    // ...
];

ここでは、アップロードされたファイルはアップロード ディレクトリに保存されます。

  1. コントローラーの設定

コントローラーにアップロード ディレクトリを設定して、アップロードされたファイルの保存ディレクトリを動的に決定することもできます。

ファイルをアップロードする必要があるコントローラーでは、アップロードされたファイルの保存パスを設定するだけです。 ThinkPHP フレームワークに付属する「Request」クラスの「file」メソッドを使用してアップロードされたファイルを取得し、保存時に保存先のパスを指定します。

例:

namespace app\index\controller;

use think\Controller;
use think\Request;

class Upload extends Controller
{
    public function index()
    {
        // 获取上传的图片信息
        $file = Request::instance()->file('image');
        
        // 保存在一个自定义的目录中
        $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads');
        if($info){
            echo $info->getSaveName(); // 输出uploads/a.jpg
        }else{
            echo $file->getError();
        }
    }
}

ここにアップロードされた写真は、public/uploads ディレクトリに保存されます。

  1. モデル内の設定

モデル内にアップロード ディレクトリを設定することもでき、アップロードされたファイルを一元管理できます。

アップロード ディレクトリを取得するメソッドをモデルに追加し、ファイルがアップロードされるたびにこのメソッドを呼び出してアップロード ディレクトリを取得します。アップロードされたファイルはこのディレクトリに保存されます。

例:

namespace app\index\model;

use think\Model;

class Upload extends Model
{
    // 获取上传目录
    public function getUploadDir()
    {
        return './uploads/';
    }
    
    // 上传文件
    public function upload($file)
    {
        $path = $this->getUploadDir();
        // ...
    }
}

ファイルをアップロードするときは、モデル内のアップロード メソッドを呼び出して、保存用のアップロード ディレクトリを取得するだけです。

概要

ThinkPHP フレームワークでは、アップロード ディレクトリの設定を構成ファイル、コントローラー、およびモデルで設定できます。これらの設定によりアップロードファイルのパスの一元管理が実現でき、アップロードファイルの管理・保守が容易になります。

以上がThinkPHP フレームワークのアップロード ディレクトリを設定する方法について話しましょう。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。