导航:首页 > 编程语言 > php二进制数组

php二进制数组

发布时间:2022-07-09 17:02:06

php关于获取二进制数据流转换为文件的方法

file_put_contents此函数可以安全用于二进制对象

② 批处理 php 二进制进位算法

//算法分析:我们想要实现的是数字相加,每位数的最大值为4,超过4进1位,即5进制。
//如果,数字的最后一位不等于4,那么直接相加并输出;如果最后一位是4,将这一位置1,并且进位1
//进位的1必须跟前面的数字进行相加,这就形成了一个递归,递归的条件是最后一位等于4
//为了跟前面的数字进行相加,我们必须先对原数字进行截取,比如数字1114,进位后应该得到1121
//代码是这样处理的:先把4置1,然后截取111,递归过程中执行111+1=112,然后返回112,并更上一次递归中得到的和的最后一位
//拼接成一个新的字符串:1121

③ php 如何将 16进制字符串转为16进制字符数组 或者将 2进制字符串转为16进制字符数组

echo ord(pack("H*", 'F'));
这个方法可以把hex转成bin数据直接写文件什么的都可以了

我不确定你要的答案是什么, 不过php中并不存在字符数组这个c的概念

至于bin转hex, 直接用bin2hex()即可, 不过由于php没有字符数组, 余下的如果不是你要的, 再转其它吧

php中字符本身就可以使用$var[x]的形式直接调用单个字符, 如果楼主想问的不是这些, 欢迎追问

④ PHP 如何将字符串、数字等转换为二进制数组

<?php
$data = "PHP";
print_r(unpack("C*",$data));
?>

输出:
Array
(
[1] => 80
[2] => 72
[3] => 80
)

⑤ 在PHP中,字母a和字母A的二进制,八进制,十进制,十六进制的写法是什么

字母"a":

二进制:1100001

八进制:141

十进制:97

十六进制:61

你可以通过以下代码来查看:

<?php
$num=ord('a');
//二进制
echodecbin($num),',';
//八进制
echodecoct($num),',';
//十进制
echo$num,',';
//十六进制
echodechex($num),',';

⑥ php图片以二进制的方式存储在数据库的问题

mysql自己有select语句,用这个来操作
比如说你每个图片主码设一个auto_increasment的id(自动以1,2,3这样排序下去的方式存图片),然后比如说一共有50张图片,依次读出for(i=0,i<50,i++){select
图片
from
数据库
where(图片id=
i);}就这样可以依次根据图片的id读下去。

⑦ 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中能输出二进制数据么

可以的。
可以用一个十进制二进制的函数decbin(),生成的是一个字符串,直接输出即可

阅读全文

与php二进制数组相关的资料

热点内容
不能修改的pdf 浏览:736
同城公众源码 浏览:474
一个服务器2个端口怎么映射 浏览:282
java字符串ascii码 浏览:59
台湾云服务器怎么租服务器 浏览:460
旅游手机网站源码 浏览:315
android关联表 浏览:929
安卓导航无声音怎么维修 浏览:320
app怎么装视频 浏览:423
安卓系统下的软件怎么移到桌面 浏览:80
windows拷贝到linux 浏览:753
mdr软件解压和别人不一样 浏览:886
单片机串行通信有什么好处 浏览:324
游戏开发程序员书籍 浏览:848
pdf中图片修改 浏览:275
汇编编译后 浏览:478
php和java整合 浏览:833
js中执行php代码 浏览:447
国产单片机厂商 浏览:62
苹果手机怎么设置不更新app软件 浏览:289