php的Url 安全的base64编码解码类

复制代码
/**
 * Url安全的Base64编码方法
 * @author JerryLi
 * @version 20231217
 */
final class UrlSafeB64Fun{
    /**
     * 编码
     * @param string $sData 原始字符串
     * @return string
     */
    static public function encode(string $sData): string{
        $aTmp = base64_encode($sData);
        return strtr($aTmp, ['+'=>'-', '/'=>'_', '='=>'']);
    }
    /**
     * 解码
     * @param string $sData 待解吗字符串
     * @return string
     */
    static public function decode(string $sData): string{
        $sTmp = strtr($sData, ['-'=>'+', '_'=>'/']);
        if(strlen($sTmp) % 4!= 0){
            $sTmp.= str_repeat('=', 4 - strlen($sTmp) % 4);
        }
        return base64_decode($sTmp);
    }
}
相关推荐
斑马1397 分钟前
Linux软件编程学习笔记(十)——网络(二)——TCP通信
开发语言·网络·php
艺杯羹13 分钟前
双轨大模型路由实战:从端侧Ollama边缘推理到云端大模型容灾降级架构深度拆解
开发语言·人工智能·ai·架构·php
BingoGo1 天前
免费可商用 PHP 管理后台 CatchAdmin V5.4.0 发布,新增短信服务能力
后端·php
纯.Pure_Jin(g)2 天前
靶场PHP函数整理+防御方式
开发语言·php·ctf
神仙别闹2 天前
基于C++ WinPcap 的网络抓包软件
网络·c++·php
斑马1392 天前
Linux软件编程学习笔记(五)——线程
开发语言·php
学习星球2 天前
空天地一体化网络(NTN)深度解析:从Starlink D2C到3GPP NTN,卫星直连手机是如何实现的?
网络·人工智能·算法·智能手机·php
郑州光合科技余经理3 天前
本地生活服务系统:模块边界与结算字段怎么拆
java·开发语言·前端·后端·系统架构·uni-app·php
2601_962072503 天前
网络安全防护指南:筑牢网络安全防线(510)
安全·web安全·php