您的位置:

php存储二进制,php二进制文件

本文目录一览:

PHP中怎么以二进制形式表示数字?

需要准备的材料分别是:电脑、php编辑器、浏览器。

1、首先,打开php编辑器,新建php文件,例如:index.php。

2、以二进制数1110101为例,在index.php中,输入代码:$a = 0b1110101;echo $a;。

3、浏览器运行index.php页面,此时会看到二进制数1110101被成功表示,并以十进制形式打印了出来。

PHP保存二进制数据的变量,如何获得其字节长度大小?

在PHP中,可以使用函数来输出字节大小

比如 var_dump()函数

可以输出类型,长度,值

php怎样将二进制流存到文件中?

整形转化成 2二进制 可以用  base_convert:

$str = 0x8000;

 

echo $str2 = base_convert($str, 16, 2);

echo 'br';

echo base_convert($str2, 2, 16);

[code]

 

字符串 文件等 可以考虑用 pack 和 unpack 转化成二进制

 

[code=PHP]

$file1 = 'F:/46.gif';           //随便拷一个图片作为测试用

$file2 = 'F:/test.txt';         //生成的二进制流保存在这个文件里

$file3 = 'F:/47.gif';           //由二进制流还原成的文件

 

$size = filesize($file1);

 

echo '文件大小为:'.$size;

echo "\nbr转化为二进制 ...";

 

$content = file_get_contents($file1);

$content = bstr2bin($content);

 

 

$fp = fopen($file2, 'w');

fwrite($fp, $content);

fclose($fp);

 

$size2 = filesize($file2);

 

echo '转化成二进制后文件大小为:'.$size2;

 

$content = bin2bstr($content);

 

$fp = fopen($file3, 'w');

fwrite($fp, $content);

fclose($fp);

 

 

function bin2bstr($input)

// Convert a binary expression (e.g., "100111") into a binary-string

{

  if (!is_string($input)) return null; // Sanity check

 

  // Pack into a string

  $input = str_split($input, 4);

  $str = '';

  foreach ($input as $v)

  {

      $str .= base_convert($v, 2, 16);

  }

   

  $str =  pack('H*', $str);

   

  return $str;

}

 

function bstr2bin($input)

// Binary representation of a binary-string

{

  if (!is_string($input)) return null; // Sanity check

 

  // Unpack as a hexadecimal string

  $value = unpack('H*', $input);

   

  // Output binary representation

  $value = str_split($value[1], 1);

  $bin = '';

  foreach ($value as $v)

  {

      $b = str_pad(base_convert($v, 16, 2), 4, '0', STR_PAD_LEFT);

       

      $bin .= $b;

  }

   

  return $bin;

}