返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >在 PHP 中将图像编码为 Base64
  • 930
分享到

在 PHP 中将图像编码为 Base64

2024-02-27 21:02:07 930人浏览 泡泡鱼
摘要

借助 PHP 中的多个内置函数,有很多方法可以将图像编码为 base64 格式。 这些函数包括: pathinfo file_get_contents base64_enc

借助 PHP 中的多个内置函数,有很多方法可以将图像编码为 base64 格式。

这些函数包括:

  • pathinfo
  • file_get_contents
  • base64_encode
  • mime_content_type

php 中使用 file_get_contentspathinfobase64_encode 将图像编码为 Base64

图像应该有一个存储在变量中的定义路径,以使用 file_get_contentspathinfobase64_encode 将图像编码为 base64。

使用 pathinfo 功能读取信息。然后将结果信息传递给 file_get_contents 函数。

file_get_contents 的工作是将图像文件读入字符串。我们可以将字符串传递给 base64_encode 函数。

要显示 base64 编码的图像,连接字符串 data:image/、来自 pathinfo 的信息、字符串 ;base64 和 base64 编码的字符串。


<?php
	// Define a path for the image
	$image_path = 'xps-unsplash.jpg';

	// Check the image type
	$image_type = pathinfo($image_path, PATHINFO_EXTENSioN);

	// Read the image into a string
	$data = file_get_contents($image_path);

	// Encode the image
	$base64_encode = 'data:image:/' . $image_type . ';base64,' . base64_encode($data);

	// Return the first 50 characters of the
	// base64 encoded string
	echo substr($base64_encode, 0, 50);
?>

输出:


data:image:/jpg;base64,/9j/4AAQSkZJRgABAQEASABIAAD

在 PHP 中使用 file_get_contentsbase64_encode 将图像编码为 Base64

要将图像转换为 base64,请将图像的路径直接传递给 file_get_contents 函数。

file_get_contents 函数将返回一个字符串。如果你将此字符串作为参数提供给 base64_encode 函数,将会有所帮助。


<?php
    // Define a path for the image
    $data = file_get_contents('xps-unsplash.jpg');

    // Encode the image
    $base64_encode = base64_encode($data);

    // Return the first 50 characters of the
    // base64 encoded string
    echo substr($base64_encode, 0, 50);
?>

输出:


/9j/4AAQSkZJRgABAQEASABIAAD/4gIcSUNDX1BST0ZJTEUAAQ

在 PHP 中使用 base64_encodemime_content_type 将图像编码为 Base64

使用 file_get_contents 函数读取图像路径。然后将生成的字符串转换为 base64 编码。

你可以在将图像源传递给 html <img> 标记中的 src 标记之前对其进行格式化。

为此,你需要将图像格式化为 data:{mime};base64,{data}。你可以从格式中推断出你需要图像 mime 类型。

你可以使用 mime_content_type 函数获取图像 mime 类型。最后,你将格式作为 <img> 标记的 src 属性的值传递。


<?php
    // Define a path for the image
    $image_path = 'xps-unsplash.jpg';

    // Read the image path and convert it to
    // base64
    $base64_encode = base64_encode(file_get_contents($image_path));

    // Prepare the image for use in an img
    // src tag
    $image_source = 'data: ' . mime_content_type($image_path) . ';base64,' . $base64_encode;

    // Display the image in the img src tag
    echo '<img src="' . $image_source . '">';
?>

输出:

在 PHP 中将图像编码为 base64


使用 PHP 中的自定义函数将图像编码为 Base64

在此函数的定义中,你可以使用诸如 file_get_contentsbase64_encodepathinfo 之类的方法来处理图像编码。

你可以使用 file_put_contents 实现缓存功能以获得更好的性能。


<?php
    function encode_html_image (
        $image_file,
        $alternate_text = NULL,
        $image_cache,
        $image_extension = NULL
    ) {
        // check if the image is not a file
        if (!is_file($image_file)) {
            return false;
        }
        // Save the image as base64 extension for
        // use as a cache
        $image_with_base64_extension = "{$image_file}.base64";
        if ($image_cache && is_file($image_with_base64_extension)) {
            // Use the cache image
            $base64_encoded_image = file_get_contents($image_with_base64_extension);
        } else {
            // Create a new base64 encoded image
            $image_binary_data = file_get_contents($image_file);
            $base64_encoded_image = base64_encode($image_binary_data);

            if ($image_cache) {
                file_put_contents($image_with_base64_extension, $base64_encoded_image);
            }
        }

        $image_extension = pathinfo($image_file, PATHINFO_EXTENSION);

        return "<img alt='{$alternate_text}' src='data:image/{$image_extension};base64,{$base64_encoded_image}' />";
    }

    $sample_image = 'xps-unsplash.jpg';
    $encoded_image = encode_html_image($sample_image, 'XPS by DELL', true);
    echo $encoded_image;
?>

输出:

在 PHP 中将图像编码为 base64

--结束END--

本文标题: 在 PHP 中将图像编码为 Base64

本文链接: https://lsjlt.com/news/569196.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 在 PHP 中将图像编码为 Base64
    借助 PHP 中的多个内置函数,有很多方法可以将图像编码为 base64 格式。 这些函数包括: pathinfo file_get_contents base64_enc...
    99+
    2024-02-27
  • 在GO中将gif图像转换为base64
    在GO语言中,将GIF图像转换为Base64编码是一种常见的操作。通过将图像数据转换为Base64编码,我们可以方便地在网页中嵌入图片,或者将图片数据以字符串形式传输。在GO语言中,可...
    99+
    2024-02-09
    go语言
  • PHP5.2怎么将图片转换为Base64编码
    这篇文章主要讲解了“PHP5.2怎么将图片转换为Base64编码”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP5.2怎么将图片转换为Base64编码”吧!在开发网页时,我们经常需要嵌入...
    99+
    2023-07-06
  • php如何将blob数据转为base64编码
    本篇内容介绍了“php如何将blob数据转为base64编码”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Part 1:基础概念在开始转换之...
    99+
    2023-07-05
  • Java中将base64编码字符串转换为图片的代码
    前一段时间,在做摄像头拍照上传,摄像头拍的照片为base64编码格式的字符串,需要上传至项目中,则需要使用到将base64编码字符串转换为图片 1、将base64编码字符串转换为图片...
    99+
    2023-03-19
    Java base64编码字符串转换为图片 Java base64转换图片 Java base64编码转换
  • JS如何在浏览器中解析Base64编码图像
    这篇文章主要介绍JS如何在浏览器中解析Base64编码图像,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!浏览器对Base64的支持 图像是最经常被使用的一种二进制文件。而现代的浏览器...
    99+
    2024-04-02
  • Java中怎么将base64编码字符串转换为图片
    本篇内容介绍了“Java中怎么将base64编码字符串转换为图片”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!将base64编码字符串转换为...
    99+
    2023-07-05
  • vue实现将图像文件转换为base64
    目录将图像文件转换为base641、image转Base642、Base64图像直接显示在标签vue网络图片转base64单张图片转Base64多张图片转Base64将图像文件转换为...
    99+
    2024-04-02
  • 怎么在php中将图片转成base64
    这篇文章将为大家详细讲解有关怎么在php中将图片转成base64,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。利用PHP将图片转换成base64编码的实现方法相信大家都知道Base64是网络...
    99+
    2023-06-15
  • vue如何实现将图像文件转换为base64
    这篇文章给大家分享的是有关vue如何实现将图像文件转换为base64的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。将图像文件转换为base64直入主题,上代码(其实用的还是FileReader)1、image转B...
    99+
    2023-06-29
  • 在 PHP 中将 PDF 文档转换为预览图像
    本篇文章将讨论可用于将 PDF 文档转换为一组 PHP 预览图像的方法。 预览为您的内容增加了一层安全性,因为图像上的内容无法复制和粘贴。 它们还提供其他我们不会详述的功能。 将 PDF 文档转...
    99+
    2024-02-27
  • 如何将 Base64 编码的 p12 转换为 tls.Certificate
    有志者,事竟成!如果你在学习Golang,那么本文《如何将 Base64 编码的 p12 转换为 tls.Certificate》,就很适合你!文章讲解的知识点主要包括,若是你对本文感兴趣,或者是想...
    99+
    2024-04-04
  • Python实现将内容转为base64编码与解码
    目录一、需求说明二、base64简介三、base64编码解码3.1、Python中base64编码解码3.2、Python使用示例一、需求说明 需要使用Python实现将内容转为ba...
    99+
    2023-02-26
    Python内容转base64编码解码 Python内容转base64编码 Python base64
  • Python如何实现将内容转为base64编码与解码
    今天小编给大家分享一下Python如何实现将内容转为base64编码与解码的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、...
    99+
    2023-07-05
  • CSS中图片Base64编码是什么
    小编给大家分享一下CSS中图片Base64编码是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!什么是 base64 编码  我不是来讲概念的,直接切入正题,图片的 base64 编码就是可以将一副图片数据编码成一串字符...
    99+
    2023-06-15
  • Java项目中如何将图片与base64 编码相互转换
    这期内容当中小编将会给大家带来有关Java项目中如何将图片与base64 编码相互转换,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。代码:public static boolean&n...
    99+
    2023-05-31
    java base64 相互
  • PHP将真彩色图像转换为调色板图像
    这篇文章将为大家详细讲解有关PHP将真彩色图像转换为调色板图像,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP 将真彩色图像转换为调色板图像 在计算机图形中,真彩色图像存储每个像素的完整颜色信息,使用...
    99+
    2024-04-02
  • PHP将 PNG 图像文件转换为 WBMP 图像文件
    这篇文章将为大家详细讲解有关PHP将 PNG 图像文件转换为 WBMP 图像文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP 将 PNG 图像文件转换为 WBMP 图像文件 引言 PNG(Port...
    99+
    2024-04-02
  • PHP将 JPEG 图像文件转换为 WBMP 图像文件
    这篇文章将为大家详细讲解有关PHP将 JPEG 图像文件转换为 WBMP 图像文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。将 JPEG 图像文件转换为 WBMP 图像文件 简介 JPEG(联合图像专...
    99+
    2024-04-02
  • 怎么让chatgpt将html中的图片转为base64
    这篇文章主要介绍“怎么让chatgpt将html中的图片转为base64”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么让chatgpt将html中的图片转为base64”文章能帮助大家解决问题。...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作