Home > Article > Backend Development > How to solve the problem of garbled parameters in php get
php get parameter garbled solution: 1. Use the "iconv("gb2312","UTF-8",$gonghui);" method to solve the garbled problem; 2. Use the "mb_convert_encoding" method to solve the garbled problem .
Recommended: "PHP Video Tutorial"
php uses the get method to obtain Chinese from the url Solution to garbled code
The following are two methods
The first method uses $gonghui = iconv("gb2312","UTF-8",$gonghui);
The second method
** * 多字节字符串编码转换函数 * * @param string str 需要进行编码转换的字符串 * @param string to_encoding 指定转换为某种编码,如:gb2312、gbk、utf-8等 * @param mixed from_encoding 混合指定原来字串的编码,如:同时指定 JIS, eucjp-win, sjis-win 混合编码 * @return string string mb_convert_encoding ( string str, string to_encoding [, mixed from_encoding] ) **/
mb_convert_encoding function is PHP’s internal multi-byte string encoding conversion function, which can be used in almost all situations where it is necessary. All encodings. PHP >= 4.0.6, 5 versions supported.
Get reg.php?gh=XX directly;
//工会登入参 $gonghui = $_GET['gh'];
The $gonghui obtained is gb2312 encoded and output to the utf-8 webpage to display garbled characters
Changed to
//工会登入参数 $gonghui = $_GET['gh']; $gonghui = mb_convert_encoding($gonghui, "UTF-8", "gb2312");
The display will be normal
Convert the entire page
This method is applicable to all coding environments. In this way, the character set other than the first 128 characters (display characters) is represented by NCR (Numeric character reference, such as "Chinese characters" will be converted into the form "汉字"). This encoding is The page can be displayed normally in any coding environment.
Add the following three lines of code to the head of the php file:
mb_internal_encoding("gb2312"); // 这里的gb2312是你网站原来的编码 mb_http_output("HTML-ENTITIES"); ob_start('mb_output_handler');
To use the mb_convert_encoding function, you need to enable PHP's mbstring (multi-byte string) extension.
If the mbstring extension of PHP is not enabled, you need to make the following settings to allow PHP to support the extension.
1. Windows server environment
Edit the php.ini file, remove the ; in front of extension=php_mbstring.dll, and restart the web server.
2. Linux server environment
Add the --enable-mbstring=cn compilation parameter when compiling the configuration, and then compile and install PHP.
The above is the detailed content of How to solve the problem of garbled parameters in php get. For more information, please follow other related articles on the PHP Chinese website!