Làm cách nào để chuyển đổi base64 thành hình ảnh và lưu vào thư mục trong php?

Trong hướng dẫn này, tôi sẽ cho bạn biết cách xử lý các hình ảnh được mã hóa bằng Base64 và ghi hình ảnh vào thư mục

Khi làm việc với API cho ứng dụng, Bạn sẽ nhận thấy rằng họ sẽ gửi định dạng hình ảnh được mã hóa Base64. Vì vậy, trong trường hợp đó, bạn sẽ cần di chuyển các hình ảnh được mã hóa Base64 sang máy chủ dưới dạng tệp hình ảnh

Trong PHP, rất dễ lấy tệp hình ảnh từ mã hóa Base64

Khi làm việc với canvas, bạn sẽ có chuỗi mã hóa base64 trong biểu mẫu, sau đó bạn sẽ gửi dữ liệu biểu mẫu đến máy chủ bằng phương thức POST và trên máy chủ, bạn chuyển đổi chúng thành tệp hình ảnh

Bạn đang tìm cách lưu phía máy chủ hình ảnh PNG, từ chuỗi dữ liệu base64 hoặc không thể tải lên hình ảnh được mã hóa base64 bằng Codeigniter?

Chúng tôi đang tạo một số chức năng để sử dụng kiểm tra chuỗi base64 có hợp lệ hay không, kích thước và loại tệp

tạo ứng dụng tệp/thư viện/Base64fileUploads. php

is_base64($base64string) == true 
        ){  
            $base64string = "data:image/jpeg;base64,".$base64string;
            $this->check_size($base64string);
            $this->check_dir($path);
            $this->check_file_type($base64string);
            
            /*=================uploads=================*/
            list($type, $base64string) = explode(';', $base64string);
            list(,$extension)          = explode('/',$type);
            list(,$base64string)       = explode(',', $base64string);
            $fileName                  = uniqid().date('Y_m_d').'.'.$extension;
            $base64string              = base64_decode($base64string);
            file_put_contents($path.$fileName, $base64string);
            return array('status' =>true,'message' =>'successfully upload !','file_name'=>$fileName,'with_path'=>$path.$fileName);
        }else{
            print_r(json_encode(array('status' =>false,'message' => 'This Base64 String not allowed !')));exit;
        }
    }
    
    public function check_size($base64string){
        $file_size = 8000000;
        $size = @getimagesize($base64string);
        
        if($size['bits'] >= $file_size){
            print_r(json_encode(array('status' =>false,'message' => 'file size not allowed !')));exit;
        }
        return true;
    }
    
    public function check_dir($path){
        if (!file_exists($path)) {
            mkdir($path, 0777, true);
            return true;
        }
        return true;
    }
    
    public function check_file_type($base64string){
        $mime_type = @mime_content_type($base64string);
        $allowed_file_types = ['image/png', 'image/jpeg', 'application/pdf'];
        if (! in_array($mime_type, $allowed_file_types)) {
            // File type is NOT allowed
           // print_r(json_encode(array('status' =>false,'message' => 'File type is NOT allowed !')));exit;
        }
        return true;
    }
}

Ví dụ Codeigniter

Gọi lớp này là Codeigniter trong bộ điều khiển


$base64file   = new Base64fileUploads();
$return = $base64file->du_uploads($this->data['document'],$document_front_site);

 

0 bình luận

  • Chia sẻ cái này

Làm cách nào để chuyển đổi base64 thành hình ảnh và lưu vào thư mục trong php?

Cách tải base64 lên tệp trong PHP

1 năm trước 14 nghìn lượt xem

  • Làm cách nào để chuyển đổi base64 thành hình ảnh và lưu vào thư mục trong php?

    Đăng nhập bằng Facebook trong CodeIgniter 3. 1. 10- 5. 6 ở trên

    2 năm trước 14 nghìn lượt xem

  • Để lại một câu trả lời

    Bạn phải đăng nhập để bình luận Cách tải base64 lên tệp trong PHP. Nhấp vào Đăng nhập

    đăng bình luận

    Bài viết liên quan

    php,base64,tệp,tải lên

    Cách tải base64 lên tệp trong PHP

    Cách tải base64 lên tệp trong PHP Trong hướng dẫn này, chúng tôi sẽ cho bạn biết cách xử lý hình ảnh được mã hóa bằng Base64 và viết hình ảnh

    9 tháng trước Ngăn xếp

    php, codeIgniter, facebook

    Đăng nhập bằng Facebook trong CodeIgniter 3. 1. 10- 5. 6 ở trên

    Tích hợp đăng nhập Facebook là tính năng được ứng dụng web sử dụng nhiều nhất hiện nay. Tính năng đăng nhập bằng Facebook giúp người dùng đăng nhập vào web appli

    11 tháng trước K. K ADIL KHAN AZAD

    laravel, Ubuntu, linux

    Cách cài đặt phiên bản laravel mới nhất trên Ubuntu 18. 04. 20. 04

    Chào mừng. các bạn hôm nay Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Laravel trên Ubuntu 20. * hoặc 20. *+ hệ thống. Các hướng dẫn tương tự áp dụng cho

    11 tháng trước Ngăn xếp

    Linux, Flutter, Ubuntu

    Cách cài đặt Flutter trên Ubuntu 20. 04 Hoặc 18. 04 Hoặc 21. 04Linux

    Flutter là một SDK mã nguồn mở được phát triển để lập trình các ứng dụng hoạt động trên nhiều hệ điều hành sử dụng một cơ sở mã duy nhất như Android, i

    Làm cách nào tôi có thể tải xuống hình ảnh Base64 trong PHP?

    php dưới dạng hình ảnh base64. .
    Tải xuống
    cơ sở64

    Hình ảnh Base64 được lưu trữ ở đâu?

    Thay vào đó, chúng được lưu trữ ở dạng nhị phân thô trong cột nhị phân, cột blob hoặc tệp . Base64 chỉ được sử dụng làm cơ chế vận chuyển, không dùng để lưu trữ. Ví dụ: bạn có thể nhúng hình ảnh được mã hóa base64 vào tài liệu XML hoặc email.

    BTOA có giống với Base64 không?

    Phương thức btoa() tạo một chuỗi ASCII được mã hóa Base64 từ một chuỗi nhị phân (i. e. , một chuỗi trong đó mỗi ký tự trong chuỗi được coi là một byte dữ liệu nhị phân).

    Làm cách nào để giải mã Base64 trong PHP?

    The base64_decode() là một hàm sẵn có trong PHP được sử dụng để Giải mã dữ liệu được mã hóa trong MIME base64. Thông số. Hàm này chấp nhận hai tham số như đã đề cập ở trên và được mô tả bên dưới. dữ liệu $. Đó là tham số bắt buộc chứa chuỗi được mã hóa. $ nghiêm ngặt. Nó là một tham số tùy chọn.