PHP安全的URL字符串base64编码和解码


Posted in PHP onJune 19, 2014

如果直接使用base64_encode和base64_decode方法的话,生成的字符串可能不适用URL地址。下面的方法可以解决该问题:

URL安全的字符串编码:

function urlsafe_b64encode($string) {

   $data = base64_encode($string);

   $data = str_replace(array('+','/','='),array('-','_',''),$data);

   return $data;

 }

URL安全的字符串解码:

function urlsafe_b64decode($string) {

   $data = str_replace(array('-','_'),array('+','/'),$string);

   $mod4 = strlen($data) % 4;

   if ($mod4) {

       $data .= substr('====', $mod4);

   }

   return base64_decode($data);

 }
PHP 相关文章推荐
模仿OSO的论坛(五)
Oct 09 PHP
PHP 开发工具
Dec 06 PHP
php socket方式提交的post详解
Jul 19 PHP
phpstrom使用xdebug配置方法
Dec 17 PHP
php实现格式化多行文本为Js可用格式
Apr 15 PHP
PHP打印输出函数汇总
Aug 28 PHP
浅谈PHP中try{}catch{}的使用方法
Dec 09 PHP
thinkPHP框架实现的无限回复评论功能示例
Jun 09 PHP
PHP实现负载均衡session共享redis缓存操作示例
Aug 22 PHP
php反射学习之不用new方法实例化类操作示例
Jun 14 PHP
laravel model 两表联查示例
Oct 24 PHP
PHP RabbitMQ消息列队
May 11 PHP
PHP中的多行字符串传递给JavaScript的两种方法
Jun 19 #PHP
ThinkPHP模板引擎之导入资源文件方法详解
Jun 18 #PHP
ThinkPHP CURD方法之field方法详解
Jun 18 #PHP
ThinkPHP CURD方法之data方法详解
Jun 18 #PHP
ThinkPHP CURD方法之order方法详解
Jun 18 #PHP
ThinkPHP CURD方法之table方法详解
Jun 18 #PHP
ThinkPHP CURD方法之page方法详解
Jun 18 #PHP
You might like
完美解决令人抓狂的zend studio 7代码提示(content Assist)速度慢的问题
2013/06/20 PHP
Codeigniter生成Excel文档的简单方法
2014/06/12 PHP
PHP中使用xmlreader读取xml数据示例
2014/12/29 PHP
php获得文件大小和文件创建时间的方法
2015/03/13 PHP
浅谈PHP中output_buffering
2015/07/13 PHP
PHP的swoole扩展安装方法详细教程
2016/05/18 PHP
jQuery实战之品牌展示列表效果
2011/04/10 Javascript
JQUERY对单选框(radio)操作的小例子
2013/04/25 Javascript
基于jquery编写的放大镜插件
2016/03/23 Javascript
初探Vue3.0 中的一大亮点Proxy的使用
2018/12/06 Javascript
详释JavaScript执行环境与执行栈
2019/04/02 Javascript
微信小程序实现的绘制table表格功能示例
2019/04/26 Javascript
详解小程序input框失焦事件在提交事件前的处理
2019/05/05 Javascript
深入理解redux之compose的具体应用
2020/01/12 Javascript
vue 在methods中调用mounted的实现操作
2020/08/07 Javascript
vue中使用router全局守卫实现页面拦截的示例
2020/10/23 Javascript
举例讲解Python中的Null模式与桥接模式编程
2016/02/02 Python
Python实现简单的HttpServer服务器示例
2017/09/25 Python
解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path
2019/06/12 Python
set在python里的含义和用法
2019/06/24 Python
tensorflow实现打印ckpt模型保存下的变量名称及变量值
2020/01/04 Python
如何使用repr调试python程序
2020/02/28 Python
Pycharm新手使用教程(图文详解)
2020/09/17 Python
如何设置PyCharm中的Python代码模版(推荐)
2020/11/20 Python
50个强大璀璨的CSS3/JS技术运用实例
2010/02/27 HTML / CSS
css3加js做一个简单的3D行星运转效果实例代码
2017/01/18 HTML / CSS
全球最大的游戏市场:G2A
2018/07/05 全球购物
酒店司机岗位职责
2013/12/14 职场文书
手机促销活动方案
2014/02/05 职场文书
员工试用期考核自我鉴定
2014/04/13 职场文书
竞选班干部演讲稿100字
2014/08/20 职场文书
2015年119消防宣传日活动总结
2015/03/24 职场文书
起诉意见书范文
2015/05/19 职场文书
生死抉择观后感
2015/06/09 职场文书
【海涛DOTA解说】EVE女子战队独家录像加ZSMJ神牛两连发
2022/04/01 DOTA
JS实现简单的九宫格抽奖
2022/06/28 Javascript