saber 酱的抱枕

Fly me to the moon

02/20
2017
学习

url参数中特殊字符的转义处理

如果url中有特殊字符符号,可能会导致url不能被正确识别。

我们可以在传递参数前将url编码来解决这个问题。不过需要注意的是,有些字符在url中有独特的作用的(例如#表示锚点位置,&表示连接多个参数),所以JavaScript的encodeURI函数(意思是编码url)是不能编码这些有单独意义的字符的的。需要把它们也转码的话需要用encodeURIComponent函数(意思是编码url组件)。

下面直接列出一下有特殊含义的字符及其编码后的结果:

+    URL 中+号表示空格                                %2B
空格 URL中的空格可以用+号或者编码             %20
/   分隔目录和子目录                                     %2F
?    分隔实际的URL和参数                              %3
%    指定特殊字符                                         %25
#    表示书签                                                %23
&    URL 中指定的参数间的分隔符                  %26
=    URL 中指定参数的值                                %3D

url参数中特殊字符的转义处理

07/18
2016
学习

php获取url的状态码

function http_status($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HEADER, 1);
    curl_setopt($ch, CURLOPT_NOBODY, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 5);
    curl_exec($ch);
    $status = (int)curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
    return $status;
}

可以用这个函数来获取url请求的状态码,判断404很方便→_→

不过如果测试p站图片url的话,还得加上refer信息来绕过防盗链。

一个下载器搞得我找了好多php的东西,心好累。

php获取url的状态码

12/2
2014
学习

url转码

在上一篇文章《IP签名档生成器》中,手动添加签名用到了url转码,就是把一般的文本转换为可以作为url来使用的编码,现在我找到了两个转码工具。

第一个方法是在百度搜索"url编码",打开搜索结果中第一个应用。

在上方输入需要转码的内容,然后选择utf-8转码即可。

第二个方法是使用开源中国提供的转码工具,其实比起度娘我还是倾向于用这个。

url转码