图像无法在文件夹中查看

时间:2014-05-05 13:30:09

标签: php image laravel dir

我有一个用base64字符串编码的图像,我需要将它作为图像保存在文件夹中。 这是代码:

$img = Input::get('myField');
        define('UPLOAD_DIR', 'C:/wamp/www/laravel/dentalRoyale/public/assets/profile/');
        $img = str_replace('data:image/png;base64,', '', $img);
        $img = str_replace(' ', '+', $img);
        $data = base64_decode($img);
        $file = UPLOAD_DIR . uniqid() . '.png';
        $success = file_put_contents($file, $data);

是的,它保存在个人资料文件夹中。但我无法打开我急需的图像。我怎样才能解决这个问题?感谢

2 个答案:

答案 0 :(得分:0)

首先,你绝对肯定这是一个png吗?

其次,不需要$img = str_replace(' ', '+', $img);。如果有的话,如果字符串是uri编码的话你需要反过来。

尝试评论该行并检查它实际上是否为PNG。

答案 1 :(得分:0)

问题已解决。现在可以查看图像。我忘记将此str_replace('data:image/png;base64,', '', $img)更改为此str_replace('data:image/jpeg;base64,', '', $img),,因为我的图片类型为jpeg。