PHP utf-8 encoding problem, utf8 encoding, database garbled, page display output garbled_PHP tutorial

WBOY
Release: 2016-07-21 15:12:39
Original
819 people have browsed it

I have been talking for a long time, but it is a problem that confuses many people. If it is not handled well, it will be garbled. When I say these words, it does not mean that I am proficient in coding, but I have to pay attention to this aspect. I have summarized a little experience. (Places where garbled codes are prone to occur include PHP files, codes stored in databases, page display, and data transmission):

1. When building a database, especially when using phpMyAdmin to deal with MYSQL, it is usually utf-8, and the field is utf8_general_ci

Database settings:

Look in the my.ini file:
[mysql]
default-character-set = utf8
[mysqld]
default-character-set = utf8
init_connect = 'SET NAMES utf8 '
Set all to utf8
Save, restart the mysql service

2. When dealing with data mysql_query("set names 'utf8'"); note: utf8, not utf-8

3. The default encoding of PHP files is ANSI and needs to be converted to UTF-8. As for how to convert, editplus has such a function. When "Save As", there is an option to encode UTF-8. Note: You cannot select: UTF -8 + BOM. If you choose this, you will have problems when processing sessions, so you must pay attention. Some people develop in eclipse, Myeclipse, and ZendStudio. The default in eclipse is ISO-8859-1. , you need to open the "Preferences" window in "Window"->"Preferences", go to "General"->"Workspace" on the left, and set the default encoding to utf-8 in "Text File Encoding"

4. It must be stated in the PHP file: such as

or

Copy code The code is as follows:



5. There may also be garbled characters when processing double bytes such as Chinese. PHP can use iconv and mb_convert_encoding to handle it. Double bytes, for the rest, please refer to the PHP help manual

6. To add one point (missing point), in your program you need to know that there may be encoding problems when transferring data, but you don’t know what encoding is used for the transferred data. PHP provides methods to handle this. Here is a simple method I wrote. You can refer to it

Copy code The code is as follows:

//Encoding conversion
function display_fileencoding($filename)
{
                                                                                                                  encoding($filename,"UTF-8", $code);//Convert encoding $code to utf-8 encoding
                      return $filename; 🎜 > }  



Make sure mbstring is enabled in your php.ini

7. Just make sure the above codes are consistent! ! The database and web page output will no longer be garbled. If there is something wrong, please leave a message to point it out! !

http://www.bkjia.com/PHPjc/326673.html

www.bkjia.com

true

http: //www.bkjia.com/PHPjc/326673.htmlTechArticleI have been talking about it for a long time, but it is a problem that confuses many people. If it is not handled well, it will be garbled. Say this It’s not that I’m very proficient in coding, it’s just that I have to be careful in this regard. I summarized it myself...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!