注册 登录
编程论坛 PHP技术论坛

php如何在文件中写入或读取ASCII码?

ramble 发布于 2005-04-20 18:41, 2133 次点击
我就是想用PHP向文件里写一个ASCII码:0x00
比如$fp = fopen (".test.dat", "wb+");这样的方式打开一个文件。
然后我想向中间写入一组ASCII码,比如就写一个字节:0x00
如果我用
$var=0;
fwrite($fp,$var);
来写入,那么它会自动把00转换为字符类型,实际写入文件的就是0x30这个值了。

我如果想从文件中读取一个ASCII码,比如我的文件内容就一个字节:0x05,我想读取这个0x05
我用
$var=fgetc($fp);
echo (int)$var;(或者echo $var=$var+30;(5的ASCII码值是35))
这时候var的值分别是0和30,而我想要它读出5这个整型值。
请教高手,我怎么才能从文件中读取和写入想要的ASCII码值呢?
1 回复
#2
ramble2005-04-20 19:47

已经在高手的指导下解决了。 方法如下,贴出来以供跟我陷入相同困境的朋友查询。 写入用fwrite($fp,chr(0)); 读出用$n=ord(fread($fp,1));

CHR():string chr ( int ascii ),返回相对应于 ascii 所指定的单个字符。

ORD():int ord ( string string ),得出指定字符的ASCII码.

1