>  기사  >  백엔드 개발  >  PHP를 MySQL에 연결할 때 잘못된 코드 문제를 해결하는 효과적인 방법

PHP를 MySQL에 연결할 때 잘못된 코드 문제를 해결하는 효과적인 방법

WBOY
WBOY원래의
2024-03-06 12:36:04798검색

有效解决 PHP 连接 MySQL 乱码困扰的方法

MySQL에 대한 PHP 연결의 잘못된 문제를 해결하는 방법

MySQL은 일반적으로 사용되는 관계형 데이터베이스 관리 시스템이며, PHP는 널리 사용되는 서버 측 스크립팅 언어로 웹사이트와 애플리케이션을 개발하는 데 종종 함께 사용됩니다. . PHP를 사용하여 MySQL 데이터베이스에 연결할 때 중국어 데이터가 왜곡되어 개발자에게 문제를 일으키는 문제가 종종 발생합니다. 이 기사에서는 MySQL에 대한 PHP 연결의 잘못된 문제를 해결하는 몇 가지 효과적인 방법을 소개하고 구체적인 코드 예제를 제공합니다.

  1. 데이터베이스 및 테이블 문자셋 설정

먼저 데이터베이스와 테이블의 문자셋 설정이 올바른지 확인하세요. 데이터베이스를 생성할 때 utf8 또는 utf8mb4와 같은 적절한 문자 집합을 선택해야 합니다. 또한 테이블을 생성할 때 올바른 문자 집합과 조합 규칙을 지정하십시오. 예:

CREATE DATABASE my_database CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE TABLE my_table (
    id INT AUTO_INCREMENT,
    name VARCHAR(50) CHARACTER SET utf8mb4,
    PRIMARY KEY (id)
) ENGINE=InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  1. 데이터베이스에 연결할 때 문자 집합 설정

PHP가 MySQL 데이터베이스에 연결할 때 올바른 저장 및 데이터 읽기를 보장하려면 문자 집합을 utf8mb4로 설정해야 합니다. 코드에 다음 문을 추가하여 데이터베이스에 연결할 수 있습니다.

$mysqli = new mysqli("localhost", "username", "password", "my_database");
$mysqli->set_charset("utf8mb4");
  1. 데이터베이스를 쿼리할 때 문자 집합을 설정하세요

SQL 쿼리 문을 실행하기 전에 문자 집합도 utf8mb4로 설정해야 합니다. 쿼리 문을 실행하기 전에 다음 문을 추가할 수 있습니다.

$mysqli->query("SET NAMES 'utf8mb4'");
  1. 데이터베이스 운영 시 UTF-8 인코딩 사용

PHP에서 중국어 데이터를 처리할 때는 반드시 UTF-8 인코딩을 사용해야 합니다. UTF-8 인코딩은 데이터베이스에 데이터를 저장하거나 데이터베이스에서 데이터를 읽을 때 사용됩니다. 예:

$name = "张三";
$name = utf8_encode($name); // 将字符串转换为 UTF-8 编码
$result = $mysqli->query("INSERT INTO my_table (name) VALUES ('$name')");
  1. 데이터 표시 시 페이지 인코딩 설정

마지막으로 웹 페이지에 데이터 표시 시 페이지 인코딩도 UTF-8로 설정해야 중국어 데이터가 올바르게 표시됩니다. HTML 헤더에 다음 코드를 추가할 수 있습니다.

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

위의 방법을 통해, PHP가 MySQL 데이터베이스에 연결할 때 발생하는 중국어 데이터 왜곡 문제를 효과적으로 해결할 수 있습니다. 올바른 문자 집합 설정과 인코딩 사양을 따르면 데이터의 올바른 저장, 읽기 및 표시를 보장할 수 있습니다. 위 내용이 모든 분들께 도움이 되었으면 좋겠습니다.

위 내용은 PHP를 MySQL에 연결할 때 잘못된 코드 문제를 해결하는 효과적인 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.