Chuyển đổi base64 thành hình ảnh PHP

Hôm nay chúng tôi sẽ hướng dẫn các bạn cách chuyển base64 sang file ảnh trong PHP. Trong bài viết trước, chúng ta đã học cách chuyển đổi một hình ảnh thành chuỗi được mã hóa base64 bằng PHP

Chuyển đổi Base64 thành hình ảnh trong PHP, Chuyển đổi hình ảnh thành Base64, hình ảnh được mã hóa php base64 từ url, php giải mã hình ảnh base64 và hiển thị, php chuyển đổi hình ảnh base64 thành jpg, lưu trữ hình ảnh base64 trong php, Chuyển đổi base64 thành tệp hình ảnh và ghi vào thư mục trong

Kiểm tra các bài viết khác về PHP

  • Tải lên hình ảnh bằng cách sử dụng PHP
  • Hộp văn bản tự động hoàn thành bằng PHP, MySQL và jQuery
  • Hàm Explode() và Implode() trong PHP
  • Cộng hoặc trừ ngày, tháng và năm cho một ngày bằng PHP
  • Xóa ký tự cuối cùng khỏi chuỗi trong PHP

Ví dụ để chuyển đổi base64 thành tệp hình ảnh

Giả sử rằng chúng ta có chuỗi hình ảnh base64 sau đây

1

iVBORw0K. . . kSuQmCC

Ghi chú. Chuỗi hình ảnh base64 đã cho không phải là chuỗi hình ảnh hoàn chỉnh, vì vậy hãy sử dụng chuỗi hình ảnh base64 của bạn để thực thi mã. Kiểm tra nguồn git cho chuỗi demo

Bây giờ hãy thử tạo một tệp hình ảnh bằng PHP. Đoạn mã sau sẽ giúp bạn làm điều đó. Đảm bảo rằng bạn có một thư mục images được phép trước khi thực thi mã

mục lục. php

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

 

// mã hình ảnh base64

$base64_code = ";

 

//tạo một tập tin hình ảnh

$fp = fopen(". /hình ảnh/clue_mediator. png", "w+");

 

//ghi dữ liệu vào file ảnh

fwrite($fp, base64_decode($base64_code));

 

// đóng một con trỏ tệp đang mở

fclose($fp);

 

?>

Hãy cố gắng hiểu từng dòng mã

  • Trước tiên hãy xem xét mã hình ảnh base64 để chuyển đổi nó thành hình ảnh
  • Sử dụng hàm fopen() để tạo tệp hình ảnh trong thư mục đã cho
  • Bây giờ, hãy sử dụng hàm fwrite() để ghi mã hình ảnh base64 vào tệp hình ảnh
  • Cuối cùng, chúng ta phải đóng một con trỏ tệp đang mở mà chúng ta đã sử dụng hàm fclose()

Sau khi thực thi tệp index.php, chúng ta có thể lấy một hình ảnh từ mã base64 và lưu nó vào đường dẫn đã cho của thư mục

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

Chuyển đổi base64 thành hình ảnh PHP

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

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

  • Chuyển đổi base64 thành hình ảnh 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

    10 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

    1 năm 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

    1 năm 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 để chuyển đổi base64 thành tệp hình ảnh trong PHP?

    Sử dụng đoạn mã sau để chuyển đổi nó thành tệp hình ảnh. hàm base64_to_jpeg( $base64_string, $output_file ) { $ifp = fopen( $output_file, "wb" ); . jpg' );

    Làm cách nào để chuyển đổi base64 thành tệp hình ảnh?

    Chuyển đổi Base64 thành hình ảnh trực tuyến bằng công cụ giải mã miễn phí cho phép bạn giải mã Base64 dưới dạng hình ảnh và xem trước trực tiếp trong trình duyệt. .
    Dán chuỗi của bạn vào trường “Base64”
    Nhấn nút “Giải mã Base64 thành hình ảnh”
    Nhấp vào liên kết tên tệp để tải xuống hình ảnh

    Làm cách nào để lấy kích thước hình ảnh từ base64 trong PHP?

    Điều gì sẽ xảy ra nếu bạn giải mã chuỗi đó bằng hàm php base64_decode($encoded_string); . //Giải mã $data = base64_decode($encoded_string); like so: //Decode $data = base64_decode($encoded_string); //Create image $img = imagecreatefromstring($data); $output = imagejpeg($img, $filepath, 100);

    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.