php实现文件与16进制相互转换的方法示例
前言
本文给大家介绍的是如何使用PHP实现文件与16进制相互转换,例如可以把文件转为16进制后保存到数据库中,也可以把16进制数据转为文件保存。
代码如下:
<?php
/**
*php文件与16进制相互转换
*Date:2017-01-14
*Author:fdipzone
*Ver:1.0
*
*Func
*fileToHex文件转16进制
*hexToFile16进制转为文件
*/
/**
*将文件内容转为16进制输出
*@paramString$file文件路径
*@returnString
*/
functionfileToHex($file){
if(file_exists($file)){
$data=file_get_contents($file);
returnbin2hex($data);
}
return'';
}
/**
*将16进制内容转为文件
*@paramString$hexstr16进制内容
*@paramString$file保存的文件路径
*/
functionhexToFile($hexstr,$file){
if($hexstr){
$data=pack('H*',$hexstr);
file_put_contents($file,$data,true);
}
}
//演示
$file='test.doc';
//文件转16进制
$hexstr=fileToHex($file);
echo'文件转16进制<br>';
echo$hexstr.'<br><br>';
//16进制转文件
$newfile='new.doc';
hexToFile($hexstr,$newfile);
echo'16进制转文件<br>';
var_dump(file_exists($newfile));
?>
输出:
文件转16进制 efbbbf3130e4b8aae4bfafe58da7e69291e28094e280943235e4b8aae4bbb0e58da7e8b5b7... 16进制转文件 booleantrue
总结
以上就是这篇文章的全部内容内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对毛票票的支持。