
function urlencode()
{
local string="$1";
local strlen=${#string};
local encoded="";
for (( pos=0 ; pos<strlen ; pos++ )); do
c=${string:$pos:1}
case "$c" in
[-_.~a-zA-Z0-9] ) o="${c}&quo; ;;
* ) printf -v o '%%%02x' "'$c"
esac
encoded+="${o}";
done
echo "${encoded}";
}
以上是 C 语言的经过编码后的特殊符号内容是小写的, PHP 的 urlencode 编码后特殊字符串是大小的,那个变态的网站对特殊字符 url 地址大小写非常敏感。请大神帮忙转换一下。
1 iamfredng 2016 年 1 月 1 日 我反复看了下,总觉得这不是 C 语言。。。这是个 Bash 脚本吧。 |
2 iamfredng 2016 年 1 月 1 日 艹,真是个 Bash 脚本,难怪我脑内的 C 语言处理器无法解析这段代码。摔 |
4 liuhaotian 2016 年 1 月 1 日 @HanSonJ 这是一个 function 类型的函数 |
5 orvice 2016 年 1 月 1 日 还以为是自己 c 语言白学了。。 |
6 Kilerd 2016 年 1 月 1 日 又是伸手党!!表示毫无好感。 |
7 pynix 2016 年 1 月 1 日 伸手党 |
8 mikicomo 2016 年 1 月 1 日 block |
9 gdtv 2016 年 1 月 1 日 php 就是从 C 语言来的,我学了 C 学了 PHP ,居然看不懂楼主的代码,这真的是 C 吗?我读书少,别骗我。 |
10 MrZephyrus 2016 年 1 月 2 日 @orvice + 1 |
11 leveraging 2016 年 1 月 2 日 大家不要这么深恶意,我来帮楼主翻译。 function php_urlencode($url) { return urlencode($url); } |
12 leveraging 2016 年 1 月 2 日 function php_urlencode($url) { return strtolower(urlencode($url)); } |
13 EmarsXHY 2016 年 1 月 2 日 。。。有点无语,第一语言没搞清楚,第二请说人话=。= |
14 580a388da131 2016 年 1 月 2 日 看起来都是挺基本的东西。 |
15 aprikyblue 2016 年 1 月 2 日 |
16 czheo 2016 年 1 月 2 日 我中文白学了 |
17 47jm9ozp 2016 年 1 月 2 日 我还以为是 c16 新标准哪来的那么多新用法…… |
18 Cynic222 2016 年 1 月 2 日 via iPhone 我还在想哪来的 esac... |
19 wizardforcel 2016 年 1 月 2 日 via Android 你需要 strtolower() |