PHP采用get获取url汉字出现乱码怎么办

  • 来源:网络
  • 更新日期:2020-08-17

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

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