当前位置:首页 > PHP教程 > php应用 > 列表

php实现文件与16进制相互转换的方法示例

发布:smiling 来源: PHP粉丝网  添加日期:2018-08-02 09:51:00 浏览: 评论:0 

前言:本文给大家介绍的是如何使用PHP实现文件与16进制相互转换,例如可以把文件转为16进制后保存到数据库中,也可以把16进制数据转为文件保存。

代码如下:

  1. <?php 
  2. /** 
  3.  * php 文件与16进制相互转换 
  4.  * Date: 2017-01-14 
  5.  * Author: fdipzone 
  6.  * Ver: 1.0 
  7.  * 
  8.  * Func 
  9.  * fileToHex 文件转16进制 
  10.  * hexToFile 16进制转为文件 
  11.  */ 
  12.   
  13. /** 
  14.  * 将文件内容转为16进制输出 
  15.  * @param String $file 文件路径 
  16.  * @return String 
  17.  */ 
  18. functionfileToHex($file){ 
  19.  if(file_exists($file)){ 
  20.  $data=file_get_contents($file); 
  21.  returnbin2hex($data); 
  22.  } 
  23.  return''
  24.   
  25. /** 
  26.  * 将16进制内容转为文件 
  27.  * @param String $hexstr 16进制内容 
  28.  * @param String $file 保存的文件路径 
  29.  */ 
  30. functionhexToFile($hexstr,$file){ 
  31.  if($hexstr){ 
  32.  $data= pack('H*',$hexstr); 
  33.  file_put_contents($file,$data, true); 
  34.  } 
  35.   
  36. // 演示 
  37. $file='test.doc'
  38.   
  39. // 文件转16进制 
  40. $hexstr= fileToHex($file); 
  41. echo'文件转16进制<br>'
  42. echo$hexstr.'<br><br>'
  43.   
  44. // 16进制转文件 
  45. $newfile='new.doc'
  46. hexToFile($hexstr,$newfile); 
  47. //phpfensi.com 
  48. echo'16进制转文件<br>'
  49. var_dump(file_exists($newfile)); 
  50.   
  51. ?> 

输出:

文件转16进制

efbbbf3130e4b8aae4bfafe58da7e69291e28094e280943235e4b8aae4bbb0e58da7e8b5b7...

16进制转文件

boolean true

Tags: 进制 示例 文件

分享到: