MySQL에 대한 PHP 연결의 잘못된 문제를 해결하는 방법
MySQL은 일반적으로 사용되는 관계형 데이터베이스 관리 시스템이며, PHP는 널리 사용되는 서버 측 스크립팅 언어로 웹사이트와 애플리케이션을 개발하는 데 종종 함께 사용됩니다. . PHP를 사용하여 MySQL 데이터베이스에 연결할 때 중국어 데이터가 왜곡되어 개발자에게 문제를 일으키는 문제가 종종 발생합니다. 이 기사에서는 MySQL에 대한 PHP 연결의 잘못된 문제를 해결하는 몇 가지 효과적인 방법을 소개하고 구체적인 코드 예제를 제공합니다.
먼저 데이터베이스와 테이블의 문자셋 설정이 올바른지 확인하세요. 데이터베이스를 생성할 때 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;
PHP가 MySQL 데이터베이스에 연결할 때 올바른 저장 및 데이터 읽기를 보장하려면 문자 집합을 utf8mb4로 설정해야 합니다. 코드에 다음 문을 추가하여 데이터베이스에 연결할 수 있습니다.
$mysqli = new mysqli("localhost", "username", "password", "my_database"); $mysqli->set_charset("utf8mb4");
SQL 쿼리 문을 실행하기 전에 문자 집합도 utf8mb4로 설정해야 합니다. 쿼리 문을 실행하기 전에 다음 문을 추가할 수 있습니다.
$mysqli->query("SET NAMES 'utf8mb4'");
PHP에서 중국어 데이터를 처리할 때는 반드시 UTF-8 인코딩을 사용해야 합니다. UTF-8 인코딩은 데이터베이스에 데이터를 저장하거나 데이터베이스에서 데이터를 읽을 때 사용됩니다. 예:
$name = "张三"; $name = utf8_encode($name); // 将字符串转换为 UTF-8 编码 $result = $mysqli->query("INSERT INTO my_table (name) VALUES ('$name')");
마지막으로 웹 페이지에 데이터 표시 시 페이지 인코딩도 UTF-8로 설정해야 중국어 데이터가 올바르게 표시됩니다. HTML 헤더에 다음 코드를 추가할 수 있습니다.
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
위의 방법을 통해, PHP가 MySQL 데이터베이스에 연결할 때 발생하는 중국어 데이터 왜곡 문제를 효과적으로 해결할 수 있습니다. 올바른 문자 집합 설정과 인코딩 사양을 따르면 데이터의 올바른 저장, 읽기 및 표시를 보장할 수 있습니다. 위 내용이 모든 분들께 도움이 되었으면 좋겠습니다.
위 내용은 PHP를 MySQL에 연결할 때 잘못된 코드 문제를 해결하는 효과적인 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!