Home > PHP Framework > ThinkPHP > How to upload thinkphp to server

How to upload thinkphp to server

PHPz
Release: 2023-04-11 14:54:00
Original
699 people have browsed it

For developers using the ThinkPHP framework, it is a very common requirement to upload images, documents, etc. to the server in the project. Some commonly used upload methods are given below.

  1. Use the native PHP upload method

In the ThinkPHP framework, we can directly use the native PHP upload method. The specific code is as follows:

public function upload() {
    $file = request()->file(‘image’);
    // 移动到框架应用根目录/public/uploads/ 目录下
    $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads');
    if($info){
        // 成功上传后 获取上传信息
        echo $info->getFilename();
    }else{
        // 上传失败获取错误信息
        echo $file->getError();
    }
}
Copy after login

This method is relatively simple, just move the uploaded files directly to the public/uploads folder in the root directory of the server.

  1. Use Alibaba Cloud OSS storage

Alibaba Cloud OSS (Ojbect Storage Service) is a massive, secure, and low-cost cloud storage service that can be used to store various types of files, including pictures, videos, audios, documents, etc.

In ThinkPHP, we can use Alibaba Cloud OSS SDK to implement file upload. The specific code is as follows:

public function upload() {
    $file = request()->file(‘image’);
    // 实例化阿里云OSS
    $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
    $bucket = 'your-bucket-name';
    // 上传到阿里云OSS
    $object = 'uploads/'.$file->getFilename();
    $file = $file->getInfo()['tmp_name'];
    $ossClient->uploadFile($bucket, $object, $file);
}
Copy after login

This method can store files more securely and upload files to the specified Bucket. Inside.

  1. Use Qiniu Cloud Storage

Qiniu Cloud Storage is a cloud service platform that provides data storage, transmission, and processing capabilities. It can also be used to store various types of data. document.

In ThinkPHP, we can use Qiniu Cloud SDK to implement file upload. The specific code is as follows:

public function upload() {
    $file = request()->file(‘image’);
    // 实例化七牛云
    $auth = new Auth($accessKey, $secretKey);
    $token = $auth->uploadToken($bucket);
    $uploadMgr = new UploadManager();
    // 上传到七牛云
    $key = 'uploads/'.$file->getFilename();
    $filePath = $file->getInfo()['tmp_name'];
    list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);
}
Copy after login

This method can also store files more securely, and can customize upload strategies and upload callbacks. function.

Summary:

The above introduces three commonly used file upload methods. Use the native PHP upload method to directly upload files to the server, while using Alibaba Cloud OSS and Qiniu Cloud Storage can Save files more securely and support more customized needs. Developers can choose the appropriate upload method according to their specific needs.

The above is the detailed content of How to upload thinkphp to server. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template