PHP中urlencode()与urldecode()先容与用法

URL编码(URL encoding),也称作百分号编码(Percent-encoding), 是一种特定的上下文的统一资源定位符(URL)的编码机制。

urlencode()函数,可以将指定的字符串以url编码的形式举办编码。它同样也是PHP中的一个内置函数,与之相反的urldecode()函数可以对URL编码举办解码,下面这篇文章就别离讲授一下PHP中的urlencode()函数与urldecode()函数的浸染与用法。

QQ截图20190806125220.jpg

PHP urlencode()函数

urlencode():用于字符串编码并将其用于 URL 的请求部门.

语法:

urlencode (string)

参数:

string:必须,用于待编码的字符串

例:PHP利用urlencode()函数举办url编码

示例1:

<?php $str = ''; echo urlencode($str); ?>

输出功效:

http%3A%2F%2F

注:urlencode()函数将除字母以外的内容都被编码

示例2:

<?php $str = '?id=1&s=o'; echo urlencode($str); ?>

输出功效:

http%3A%2F%2F%3Fid%3D1%26s%3Do

注:urlencode()函数将网址后头所带的参数也全部被编码

示例3:

<?php $str = '飞鸟慕鱼博客,作者mochu'; echo urlencode($str); ?>

输出功效:

%E9%A3%9E%E9%B8%9F%E6%85%95%E9%B1%BC%E5%8D%9A%E5%AE%A2%EF%BC%8C%E4%BD%9C%E8%80%85mochu

注:urlencode()函数将除字母以外的汉字全部被编码

示例4:

<?php $str = '作者:mochu 手机号:123456789'; echo urlencode($str); ?>

输出功效:

%E4%BD%9C%E8%80%85%EF%BC%9Amochu+%E6%89%8B%E6%9C%BA%E5%8F%B7%EF%BC%9A123456789

注:urlencode()函数将除字母以及数字以处的内容全部被编码

示例5:

<?php //留意:字符串的最后一位是空格 $str = 'feiniaomy.com-mochu-_ '; echo urlencode($str); ?>

输出功效:

feiniaomy.com-mochu-_+urlencode()函数总结:

1、urlencode()函数可以将非字母以及数据之外的内容举办编码

2、编码的形式以百分号(%)后跟两位十六进制数举办转换

3、字符“-”和字符“_”不会被编码,保存原样输出,参考示例5

4、空格的编码为+ (加号),参考示例5

PHP urldecode() 函数

urldecode():解码已编码的 URL 字符串

语法:

urldecode (string)

参数:

string:要解码的字符串

例:urldecode()在php中的利用要领

示例1:

<?php //声明一下页面的编码,防备输出中文时乱码 header("Content-type: text/html; charset=utf-8"); $str = '飞鸟慕鱼博客'; $str2 = urlencode($str); echo $str2; echo '<br/>'; echo urldecode($str2); ?>

输出功效:

%E9%A3%9E%E9%B8%9F%E6%85%95%E9%B1%BC%E5%8D%9A%E5%AE%A2 飞鸟慕鱼博客

示例2:

<?php $str = ''; $str2 = urlencode($str); echo $str2; echo '<br/>'; echo urldecode($str2); ?>

输出功效:

http%3A%2F%2F 增补内容:

1、php超全局变量$_GET与$_REQUEST对提交的参数会自动解码,无需二次操纵

2、PHP的$_COOKIE变量需要 urldecode 解码

3、urlencode()与urldecode()在其它编程语言中也有所涉及,好比ASP,JSP,C#等

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/9007.html