座機: 029-81773686 熱線: 18966895139 聯系我們
網頁制作、網絡營銷、維護推廣、手機網站制作一站式解決方案
十分感謝六年來與我們攜手共進的朋友們、客戶們!切換新版
西安網絡公司,hooboo教您PHP將base64編碼字符串轉換成圖片并保存到本地的方法?
添加時間:2020-08-05  點擊率:15次
西安網絡公司,hooboo在開發過程中,很多通過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";
}

?>
?
版權所有 ? 西安宏博網絡,并保留所有權利 陜ICP備10007014號-8
展開客服
贵州体彩11选5