Garbled characters are a problem often encountered in web development, especially when dealing with Chinese characters. In PHP, garbled characters are usually related to character encoding. If the character encoding is used and set incorrectly, it will lead to garbled characters.
The following are some methods to deal with garbled characters:
In PHP, you can use theheader
function To set the character encoding, as follows:
header('Content-Type:text/html;charset=utf-8');
The character encoding is set to UTF-8 to ensure that the text on the page can be displayed correctly. Similarly, you can also set the character encoding in the head tag of HTML:
If garbled characters have occurred, you can use PHP's character encoding Conversion function to solve. Commonly used character encoding conversion functions areiconv
andmb_convert_encoding
. For example, convert a GBK-encoded string to UTF-8 encoding:
$str = iconv('GBK', 'UTF-8', $str); 或者 $str = mb_convert_encoding($str, 'UTF-8', 'GBK');
If you encounter Chinese garbled characters when reading the database in PHP If there is a problem, you can check the character set settings of the database. Set the database character set to UTF-8 and make sure to use the same character set when inserting and reading data.
ALTER DATABASE databasename DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
When displaying user-submitted content on a web page, in order to prevent XSS attacks, we usually filter the HTML. If the filter function is used incorrectly, it will also lead to garbled characters. It is recommended to use PHP's built-inhtmlspecialchars
andstrip_tags
functions for HTML filtering.
To sum up, dealing with garbled characters in PHP requires correctly setting the character encoding, using character encoding conversion functions, checking database character set settings and using HTML filter functions. During the development process, you need to pay attention to the unity and consistency of character encoding to effectively avoid garbled characters.
The above is the detailed content of What to do if php is garbled. For more information, please follow other related articles on the PHP Chinese website!