PHP将图像转换为二进制文件测试

时间:2016-02-05 05:33:01

标签: php image binary

我想尝试将图片转换为二进制图像。

我在网上发现了一个脚本,但它不起作用。

有人可以告诉你为什么吗?

<?php

$image="image003.jpg";

$data = fopen ($image, 'rb');
$size=filesize ($image);
$contents= fread ($fd, $size);
fclose ($fd);

$encoded= base64_encode($contents);

echo $encoded;

 ?>

我在第8行和第9行出现错误

Warning: fread() expects parameter 1 to be resource

Warning: fclose() expects parameter 1 to be resource,

2 个答案:

答案 0 :(得分:6)

使用$data代替$fd

$data = fopen ($image, 'rb');
$size=filesize ($image);
$contents= fread ($data, $size);
fclose ($data);

答案 1 :(得分:1)

正如您在此处所见http://php.net/manual/en/function.fread.php 因此,您可以阅读fread需要使用fopen生成资源。

在您的情况下:

<?php

$image = "image003.jpg"; // be careful that the path is correct

$data = fopen($image, 'rb');
$size = filesize($image);
$contents = fread($data, $size);
fclose($data);

$encoded = base64_encode($contents);

echo $encoded;

?>