curl_unescape()

1. 定义

该函数给指定的URL编码的字符串解码。 成功时返回解码后的字符串。

2. 语法

curl_unescape ( resource $ch , string $str ) : string

3. 参数说明

参数 可选性 数据类型 描述
$ch 必需 资源类型 通过函数curl_init()打开的curl资源句柄
$str 必需 字符串 需要被解码的字符串

4. 示例

<?php

// curl_unescape()
// 给指定的URL编码的字符串解码

$ch = curl_init();// 初始化 cURL 资源句柄

$search = '极速教程 极速数据';
$params = curl_escape($ch, $search);
$url = 'http://www.baidu.com/s?wd='.$params;// 将搜索关键字加在URL中,获取百度搜索结果

curl_setopt($ch, CURLOPT_URL, $url);// 配置URL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);// 配置相关参数:这里的配置为 将curl_exec()获取的信息以文件流的形式返回,而不是直接输出
$res = curl_exec($ch);// 执行资源句柄,并返回获取的信息

$effective_url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
$effective_url_decoded = curl_unescape($ch, $effective_url);

curl_close($ch);// 关闭curl会话

echo '解码前的URL:',$effective_url,PHP_EOL,'解码后的URL:',$effective_url_decoded;
/* 输出:
解码前的URL:http://www.baidu.com/s?wd=%E6%9E%81%E9%80%9F%E6%95%99%E7%A8%8B%20%E6%9E%81%E9%80%9F%E6%95%B0%E6%8D%AE
解码后的URL:http://www.baidu.com/s?wd=极速教程 极速数据
 */

5. 延展阅读