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);
    }
}
相关推荐
SHENGWEI胜为2 小时前
局域网出现 IP 地址冲突怎么办?如何从 ARP 表定位故障设备
网络协议·tcp/ip·php
4SAPI5 小时前
多模态 AI 应用统一接入网关生产选型指南:4SAPI、硅基流动与 OpenRouter 的架构权衡
大数据·人工智能·架构·php·1024程序员节
4SAPI6 小时前
营销内容生成大模型 API 生产选型指南:4SAPI、硅基流动与 OpenRouter 的架构权衡
数据库·人工智能·架构·php
迪康Defender7 小时前
PHP 高危漏洞应急分析:从风险原理到端点侧纵深防护
运维·开发语言·安全·自动化·php·运维开发·远程工作
躺柒7 小时前
读数据安全架构设计与实践16安全架构案例(上)
安全·php·零信任·安全架构·防火墙·无边界
fengci.9 小时前
CTF2刷题记录(困难部分)
android·开发语言·前端·学习·php
vipxieliang9 小时前
PHP OPcache 原理与配置:字节码缓存、参数调优、失效机制与性能影响
php
vipxieliang9 小时前
PHP 生命周期与 PHP-FPM 工作模式:从 Nginx 到 PHP 执行完毕的全链路剖析
php
xyouyuweizhu10 小时前
Java IO 流详解:流的作用、流的划分与标准输入输出流
java·python·php
软件技术NINI10 小时前
基于PHP和MySQL的快递代收点管理系统的设计与实现
开发语言·javascript·数据库·mysql·毕业设计·php·毕设