php专区

 首页 > php专区 > PHP应用 > 常用功能 > php Base64编码文件二进制流主要使用 - php高级应用

php Base64编码文件二进制流主要使用 - php高级应用

分享到:
【字体:
导读:
          Base64编码文件二进制流是使用base64_encode函数对文件二进制信息进行编码。官方说明:base64_encode 使用 MIME base64 对数据进行...

php Base64编码文件二进制流主要使用

Base64编码文件二进制流是使用base64_encode函数对文件二进制信息进行编码。

官方说明:

base64_encode — 使用 MIME base64 对数据进行编码

Report a bug 说明

string base64_encode ( string $data )

使用 base64 对 data 进行编码。

设计此种编码是为了使二进制数据可以通过非纯 8-bit 的传输层传输,例如电子邮件的主体。

Base64-encoded 数据要比原始数据多占用 33% 左右的空间,具体方式为如下代码:

  1. $path = 'image.jpg'
  2. $fp = fopen($path'rb');  // 以二进制形式打开文件 
  3. $content = fread($fpfilesize($path)); // 读取文件内容 
  4. fclose($fp); 
  5. $content = base64_encode($content); // 将二进制信息编码成字符串 
  6. // echo $content; 

上述程序输出的结果类似:

R0lGODlhEAAQAJECAISEhAAAhP///wAAACH5BAEAAAIALAAAAAAQABAAAAImlI+pyxedQADQhVflpfAK30jG1lwmqIgWl6CClmKHxn6mdVb6zhcAOw==

这样我们成功将一个文件转换成了字符串。

解码过程非常简单,使用base64_decode($content)即可。

上述处理过程主要用途有:

1、接口传输

主要适用于通过WEB接口将文件从一个站点向另一个站点传输,可以用于XML信息。

2、存入数据库

当然,将图片等文件信息保存到数据库中完全可以不用这么做,但这种方式依然适用。对于数据库新手来说这种方式更可接受。因为这完全是一个字符串。

3、文件加密

文件加密可大家用得比较少,举个例子,假如我们有一套PHP程序需要保护,必须有授权码的用户才能正常运行,那么我们可能使用授权码来对文件进行加密,即将上述编码后的字符串再次加工,运行过程需要授权码才可运行,当然还有其它用途,根据各人的需要灵活使用.

分享到:
php中的魔术方法一些学习笔记 - php高级...
php中的魔术方法一些学习笔记 魔术方法是在php5中以__开头的,它们有着魔术般的功能,可以给我开发带来很多好处,下面我来给大家介绍魔术方法一些用法与在php中有那些魔术方法吧。 魔术方法是以两个下划线"__"开头、具有特殊作用的一些方法,可以看做php的"语法糖"。语法糖指那些没有给计算...
php中pcntl_alarm为函数设置超时限制 - p...
php中pcntl_alarm为函数设置超时限制 原理是在函数执行前先设定一个时钟信号,如果函数的执行超过规定时间,信号会被触发,信号处理函数(sig)会抛出一个异常,被外层代码捕获。这样就跳出了原来函数的执行,接着执行下面的代码。如果函数在规定的时间内,时钟信号不会触发,在函数结束后清...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……