请问下大家,PHP如何把URL链接转成这样的16进制的编码?并且能正常访问
这样吗?你可以试试下面这个内容,复制后浏览器打开,主要是不要编码?=/这3个字符,有帮助麻烦点个采纳【本回答右上角】,谢谢~~
http://www.w3dev.cn/%61%72%74%69%63%6C%65/%32%30%32%31%30%37%30%38/%68%6F%6E%67%6B%6F%6E%67%2D%63%6C%6F%75%64%2D%76%70%73%6E%6D%2E%63%6F%6D%2E%61%73%70%78
<?php
function strToHex($str){
$hex="";
//需要注意的是=?/这3个字符不要编码';
for($i=0;$i<strlen($str);$i++)$hex.=$str[$i]=="?"||$str[$i]=="="||$str[$i]=="/"?$str[$i]:'%'.dechex(ord($str[$i]));
$hex=strtoupper($hex);
return $hex;
}
$s="/article/20210708/hongkong-cloud-vpsnm.com.aspx";
$url="http://www.w3dev.cn/".strToHex($s);
echo $url.'<br><br>复制上面url网址打开,浏览器会自动解码获取对应内容';
?>
?>