在 Web 開發中,經常需要對 URL 參數進行加密傳輸,以保護敏感資訊或防止參數被竄改。PHP 內建的 base64_encode() 和 base64_decode() 函數提供了簡單的編碼解碼機制,結合 rawurlencode() 可進一步確保 URL 安全傳輸。
$str = 'd3d3LmJramlhLmMwbSvlvZDkuIrmuqU='; // 已編碼字串
echo base64_decode($str); // 輸出:www.bKjia.c0m一聚教程網
$str = 'www.bKjia.c0m一聚教程網';
echo base64_encode($str); // 輸出:d3d3LmJramlhLmMwbSvlvZDkuIrmuqU=
為了在 URL 中安全傳遞 Base64 編碼後的資料,建議使用 rawurlencode() 對編碼結果進行處理:
// 編碼
$returnUrl = rawurlencode(base64_encode($returnUrl));
// 解碼
$returnUrl = base64_decode(rawurldecode($returnUrl));
若直接使用 parse_str() 解碼失敗返回 null,可嘗試單純使用 Base64 編碼解碼:
$returnUrl = base64_encode($returnUrl); // 編碼
$returnUrl = base64_decode($returnUrl); // 解碼
安全提示:Base64 僅是編碼而非加密,只要了解原理即可還原。對於高安全性需求,建議搭配對稱加密演算法(如 AES)或使用 HTTPS 傳輸。
更多詳細內容請參考:PHP 函數參考手冊