火影 发表于 2009-9-17 22:59:30

请教个php语句的写法

我太菜了,搞了半天终于能兼容glype代理了,但是有个问题自己不会写,看别人写的也看不大明白。

需要判断在输入框里输入的网站是否包含http://或https://
如果包含http://或者https://,那么去掉前面的http,用base64加密后提交
如果不包含,则用base64加密后,再在前面添加上Oi8v后提交

应该怎么写啊?:Q 哪位高手来指点一下。。。。。感谢。。。。。。

cpuer 发表于 2009-9-17 23:22:22

回复 1# 的帖子

等高手的判断语句。

ABC 发表于 2009-9-18 09:48:58

简单的ifelse就行了:(

gdtv 发表于 2009-9-18 12:15:55

$str=.......;
if(str_len($str,7)=='http://'){
$str=str_replace('http://','',$str);
$str=base64_encode($str);
}elseif(str_len($str,8)=='https://'){
$str=str_replace('https://','',$str);
$str=base64_encode($str);
}else{
$str='Oi8v'.base64_encode($str);
}

cpuer 发表于 2009-9-18 12:50:08

回复 4# 的帖子

楼主试试吧。

summer1ove 发表于 2009-9-18 18:58:53

把协议名去掉?不需要判断?

cpuer 发表于 2009-9-18 20:16:18

回复 6# 的帖子

如果包含http://或者https://,那么去掉前面的http,用base64加密后提交
4楼里面有判断了吧。

gdtv 发表于 2009-9-18 21:12:04

我也不明白楼主要实现什么

火影 发表于 2009-9-18 21:38:51

感谢广东卫视:lol
4楼的是不能区分大小写的
我琢磨了一下写成了这样:

$_POST["Url"]=trim($_POST["Url"]);
        if(substr_count($_POST["Url"],'http://')||substr_count($_POST["Url"],'https://')==1 ){
        $_POST["Url"]=str_ireplace('http','',$_POST["Url"]);
}else{
        $_POST["Url"]='://'.$_POST["Url"];
}

这样更省劲了
直接提交出来原始的不带http头的地址
然后下面直接加密送出就可以了

cpuer 发表于 2009-9-18 22:00:15

回复 9# 的帖子

:victory: :victory:
页: [1] 2
查看完整版本: 请教个php语句的写法