Home  >  Article  >  Backend Development  >  How to solve the problem of garbled characters in php

How to solve the problem of garbled characters in php

藏色散人
藏色散人Original
2021-03-30 10:15:092345browse

Solution to some garbled characters in php: 1. Use Dreamweaver to create a new file; 2. Set the character set to utf8 in mysql; 3. Write "content="text/html" at the beginning of index.php ; charset=utf-8".

How to solve the problem of garbled characters in php

The operating environment of this article: Windows 7 system, PHP version 7.1, DELL G3 computer

Solution to some of the garbled code problems in PHP

Today I finally started to write a complete web template system by myself. I started from scratch. In the past, when making websites, I downloaded a template from the Internet. Then I modified the page and some dynamic codes, and then it was ok, but today is different, I started from scratch, so this is my graduation project, haha, no way, the title of my graduation project is "Corporate website based on PHP technology" Template Design", so I started writing some test classes of MVC today. Of course, I first downloaded an MVC guestbook instance based on PHP from the Internet. This instance has 6 program files: index.php program entry, notebook.htm message form, and then create a new folder, which contains three files: Model.php, View.php, and Controller to implement the three functions of MVC respectively, and a DataAccess.php (which is a simple database access class). At first, I passed The system right-clicks on the new text file to create a new php file. Beginners need to be reminded not to create php files like this, because it will cause garbled Chinese characters. The correct method is to create a new one through Dreamweaver, and then "Edit" in the navigation menu -> ;"Preferred Parameters"->"New Document", set the default encoding to "Unicode (UTF-8)" and remove the checkbox of "Include Unicode Signature (BOM)" to solve the problem when calling the php class , when the return method needs to be used in the class to return to the static page, if you do not follow the above method, garbled codes may appear;

Garbled code problem:

1. When index.php calls the method of View.php, garbled characters appear when getting Chinese. The solution is to use Dreamweaver to create a new one. Follow the above operations to solve the garbled code problem;

2. Because I use It is the character set of utf-8, so mysql must also be set to the utf8 character set. For example, the connection proofreading of mysql is: utf8_general_ci, and the character set of the fields in the table is utf8_unicode_ci. At the beginning of index.php, write e487370a058720f3593d960fb2d8f75b, and then in DataAccess.php as shown below:

<?php
class DataAccess {
    var $link_id; //用于存储数据库连接
    var $query_id; //用于存储查询源
    //! 构造函数.
    function __construct($host,$user,$pass,$db) {
        $this->link_id=mysql_pconnect($host,$user,$pass); //连接数据库服务器
        mysql_select_db($db,$this->link_id);              //选择所需数据库
        mysql_query("SET NAMES &#39;utf8&#39; ",$this->link_id);
    }
    function query($sql) {
        $this->query_id=mysql_unbuffered_query($sql,$this->link_id); // Perform query here
        if ($this->query_id) return true;
        else return false;
  }
    function fetchRows($sql) {
   $this->query($sql);
   $arr=array();
   $i=0;
   while( $row=mysql_fetch_array($this->query_id,MYSQL_ASSOC) )   {  
  $arr[$i]=$row;
  $i++;
    }
    return $arr;
    }
}
?>

Follow the above operation. It can solve the problem that the data read from mysql will not appear garbled.

[Recommended learning: PHP video tutorial]

The above is the detailed content of How to solve the problem of garbled characters in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
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