宏博网络 | 专注互联网品牌一站式服务

Thank you for visiting

029-81773686

全网开发&整合营销服务商

CopyRight
©HOOBOO All rights reserved

全网开发&整合营销服务商

029-81773686

西安网络公司,小宏教您PHP将base64编码字符串转换成图片并保存到本地的方法?

2020.08.05

西安网络公司,小宏在开发过程中,很多通过APP或者web前端会通过接口给我们以base64编码字符串的方式上传图片,这个时候我们就需要将这些base64编码字符串转化成图片,并且保存到本地,我们来讲解一下。


<?php


// 调用方法

public function uploads()

{

    $content = $this -> getContent();

    $this->base64_image_content($content, './uploads');

}



// base64编码字符串转换成图片并保存到本地

public function base64_image_content($base64_image_content, $path)

{

    if( preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content,$result) )

{

        $type = $result[2];

        $new_file = $path . "/images/" . date('Ymd', time()) . "/";

        if( !file_exists( $new_file ) )

{

            // 检查是否有该文件夹,如果没有就创建,并给予最高权限

            mkdir($new_file, 0700);

        }

        $new_file = $new_file.time().rand(1000,9999).".{$type}";

        if ( file_put_contents( $new_file, base64_decode(str_replace($result[1], '', $base64_image_content))) )

{

            return '/' . $new_file;

        }else{

            return false;

        }

    }else{

        return false;

    }

}


// 测试内容

public function getContent()

{

    return $content ="data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA6klEQVRYhe2WIQ7CQBBF

3xIUulmJbpAtJ2lSxQE4BJpDgCWoTXoSWF1d2aBri8CV2S4QYEX3yz8/mZfMZDIwdamxYltmCbAUSrU2thtkF0AqZBtt7M3VY

+4BLICD4OeAHXgpcBWyW+DoajDzAPxcwQGCy7eEBbATShttbD3IpsBZyO61sZWrh28JEyAT/IXDk7LJWIPgOxAcwDcCUX3PuS2zDkAbm7dldup71mp0o74IoNTTxVsJ3ksK

PoIIEAEiwKcAuTZWaWMVPI4RjyflbwBfUwSIABEgOIDvIamAi+DXDk86Rs27UNPSHT5bLdqHJYlmAAAAAElFTkSuQmCC";

}


?>


上一篇:西安网络公司,小宏教您php set_time_limit()函数的方法?

下一篇:西安网络公司,小宏教您PHP如何获取当前页面完整URL地址?

CopyRight © HOOBOO   备案号:陕ICP备10007014号-9   站点地图 免责声明:本网站部分资源来源于网络,如有侵权,请联系我们告知删除,我们将会尽快处理,谢谢!本站不承担任何法律责任。