[英]How to store QR code as image file in to Mysql Database
我正在使用Laravel實現一個簡單的應用程序。 只是想知道,當我通過電子郵件發送二維碼時,是否需要先將二維碼存儲在數據庫中以指定圖像的文件傳遞?
如果答案是肯定的,我有什么方法可以使用表單標簽來存儲二維碼?
您可以將圖像轉換為base64,然后將其存儲為文本。 有關如何編碼的更多信息,請訪問http://php.net/manual/en/function.base64-encode.php和解碼http://php.net/manual/en/function.base64-decode.php
示例編碼:
$file_encoded = base64_encode(file_get_contents($file)); //this is stringed data. save this in database.
示例解碼:
$file_encoded = base64_decode ($file_encoded); //this will be file.
您還可以將圖像存儲為BLOB ,與以base64編碼的圖像相比,開銷較小,並且不會被索引為可搜索的字符串。
更好的辦法可能是只將指向二進制文件的鏈接存儲在數據庫中,而不是數據本身。
我認為您不需要存儲實際的QR碼。
QR碼僅僅是表示字符串的一種方式。 人們通常會將URL放入QR碼中。
您可能只是將源數據存儲到數據庫中,然后從數據中生成QR。
如果數據是URL,則使用QR的設備應能夠鏈接到該URL,這會將其帶回您的應用程序。 您可以將參數放在URL的末尾,以允許您的應用從您的數據庫中檢索該用戶的數據。
您甚至可以使用簽名的URL,以便最終用戶無法更改它。
這是我發現可能會有所幫助的文章。 它不是laravel特有的,但將有助於理解QR碼。 https://www.kerneldev.com/2018/09/07/qr-codes-in-laravel-complete-guide/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.