解决PHP采用get获取url汉字出现乱码的方法

小编给大家分享一下解决PHP采用get获取url汉字出现乱码的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

PHP采用get获取url汉字出现乱码的解决办法:使用函数【string urlencode (string $str)】,将字符串编码并将其用于URL的请求部分,代码为【echo '<a href="mycgi?foo=', url】。

解决PHP采用get获取url汉字出现乱码的方法

PHP采用get获取url汉字出现乱码的解决办法:

1、使用:

代码如下:

<a href="list.php?plate=<?php echo urlencode("辖区动态");?>" charset="utf-8" target="main">[查看]</a>

然后在list.php页面这样用

代码如下:

<?php
header("Content-type: text/html; charset=utf-8");
if($_GET['plate'])
echo $plate=urldecode($_GET['plate']);
?>

也就不会乱码和传递不正常了。

注意此处的接收GET页面编码需要和发送端一致!

2、关于string urlencode ( string $str )函数

此函数便于将字符串编码并将其用于 URL 的请求部分,同时它还便于将变量传递给下一页。

示例1 urlencode()

代码如下:

<?php
echo '<a href="mycgi?foo=', urlencode($userinput), '">';
?>

示例2 urlencode() htmlentities()

代码如下:

<?php
$query_string = 'foo=' . urlencode($foo) . '&bar=' . urlencode($bar);
echo '<a href="mycgi?' . htmlentities($query_string) . '">';
?>

看完了这篇文章,相信你对解决PHP采用get获取url汉字出现乱码的方法有了一定的了解,想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!