php二进制图片
⑴ php 图片以二进制流的形式存入数据库。并且能显示出来。
这个真不会。
⑵ PHP十六进制,十进制,八进制,二进制怎么转回原本的文字
你是在说进制间的转换吗?
base_convert() 函数貌似能帮助你
比如
$a = 120;// 十进制数
// 将此十进制数转换为 2进制
echo base_convert($a , 10 , 2); // 结果是 1111000
// 在吧 1111000 转回 120 十进制 也就二进制赚十进制
echo base_convert(1111000 , 2 , 10);
至于其他进制间转换 就跟上面的操作一样了。
⑶ php中使用fopen和fread上传二进制图片失败,请问哪里有问题急!
$tpmc=str_replace(""," ",$tpmc); //将图片名称中的空格以" "取代
$author=$_SESSION['admin'];
$scsj=date("y;m;d"); //设置图片的上传时间
$fp=fopen($file,"r"); //以只读方式打开文件
$file=addslashes(fread($fp,filesize($file)));//将文件中的引号部分加上反斜线
改为
$file=str_replace(""," ",$tpmc); //将图片名称中的空格以" "取代
$author=$_SESSION['admin'];
$scsj=date("y;m;d"); //设置图片的上传时间
$fp=fopen($file,"r"); //以只读方式打开文件
$file=addslashes(fread($fp,filesize($file)));//将文件中的引号部分加上反斜线
$file 得有值呀,把 $file=str_replace(""," ",$tpmc); 改了试试,应该就好了
⑷ php将图片转为二进制后,我想得到二进制的数据,但是直接在浏览上输出会乱码
如果 你是想保存成图片文件的话, 那你就把二进制数据写到文件里, 记得文件后缀是 gif
For Example:
file_put_contents('1.gif', $a);
⑸ php接收二进制文件怎么替换里面的内容
php接收二进制文件怎么替换里面的内容
php接收二进制文件如下:
<?php
header('Content-type: text/html; charset=utf-8');
error_reporting(0);
$filename = $_GET["filename"];
$filesize = $_GET["filesize"];
$xmlstr = $GLOBALS[HTTP_RAW_POST_DATA];//$_POST["data"];//
if(empty($xmlstr)) $xmlstr = file_get_contents('php://input');
$raw = $xmlstr;//得到post过来的二进制原始数据
$file = fopen("./upload/".$filename,"w");//打开文件准备写入
fwrite($file,$raw);//写入
fclose($file);//关闭
?>
接收的二进制文件中非标准字符(>0x7F)的字节被替换为三个字节,比如E2替换为EF 9F A2
现在我想在Php接收到文件之后还原回去,把EF 9F A2替换为E2,请问这个怎么实现?
非常感谢!
PHP 二进制
------解决方案--------------------
他的数据转换规则是这样的:
文件头不变,文件头多长不清楚,图上到0050h都一样的
<=7F的字节,因为utf-8也一样,可以认为也转换了utf-8
>=80的字节,高位加上F7,再转utf-8,例如E2就变成F7E2然后转utf-8成为EF 9F A2
至少他图中E2/FB/91/B2/81...都满足这个规则
------解决方案--------------------
本帖最后由 xuzuning 于 2013-05-02 15:35:02 编辑
用正则可这样写
假定数据已把存在变量 $s 中,则
$s = preg_replace_callback('/[\xef]../', 'foo', $s);
function foo($r) {
$c = (ord($r[0]{1}) & 0x03) << 6;
$c += (ord($r[0]{2}) & 0x3f);
return chr($c);
}
⑹ PHP中怎么以二进制形式表示数字
需要准备的材料分别是:电脑、php编辑器、浏览器。
1、首先,打开php编辑器,新建php文件,例如:index.php。
⑺ php图片以二进制的方式存储在数据库的问题
mysql自己有select语句,用这个来操作
比如说你每个图片主码设一个auto_increasment的id(自动以1,2,3这样排序下去的方式存图片),然后比如说一共有50张图片,依次读出for(i=0,i<50,i++){select
图片
from
数据库
where(图片id=
i);}就这样可以依次根据图片的id读下去。