请教个php语句的写法
我太菜了,搞了半天终于能兼容glype代理了,但是有个问题自己不会写,看别人写的也看不大明白。需要判断在输入框里输入的网站是否包含http://或https://
如果包含http://或者https://,那么去掉前面的http,用base64加密后提交
如果不包含,则用base64加密后,再在前面添加上Oi8v后提交
应该怎么写啊?
mad.gif
哪位高手来指点一下。。。。。感谢。。。。。。 等高手的判断语句。 简单的ifelse就行了
sad.gif
$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);
} 楼主试试吧。 把协议名去掉?不需要判断? 如果包含http://或者https://,那么去掉前面的http,用base64加密后提交
4楼里面有判断了吧。 我也不明白楼主要实现什么 感谢广东卫视
lol.gif
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头的地址
然后下面直接加密送出就可以了
victory.gif
victory.gif
刚发现有个问题
如果是带有两个http就会都被替换了
如
http://http.google.com
会被替换成://.google.com
还是不严密啊
mad.gif
页:
[1]
2