PHP가 데이터베이스와 상호 작용할 때 취미 필드에는 종종 이모티콘 및 유니 코드 문자와 같은 특수 문자가 포함됩니다. 데이터베이스 또는 페이지 인코딩이 올바르게 설정되지 않은 경우 이러한 문자는 종종 예외가 표시되거나 표시됩니다. 이 기사는 인코딩을 올바르게 구성하여 취미 필드의 내용을 정상적으로 표시 할 수 있도록하는 방법을 소개합니다.
PHP가 데이터베이스에 연결되면 데이터베이스 테이블의 문자 세트가 UTF-8이 아니거나 PHP 페이지가 올바른 인코딩을 설정하지 않으면 특수 문자가 정상적으로 렌더링되지 않습니다. 취미 필드에는 일반적으로 다양한 문자가 포함되어 있으며 기본 인코딩은 종종 호환되지 않으며 표시 예외가 나타납니다.
먼저, 데이터베이스 테이블의 문자 세트가 UTF-8인지 확인해야합니다. 다음 SQL 명령을 통해 기존 테이블의 문자 세트를 수정할 수 있습니다.
<span class="fun">ALTER 테이블 테이블 이름 문자 세트로 변환 UTF8 COLLATE UTF8_GENERAL_CI;</span>
새 테이블을 만들 때 문자 세트를 UTF-8으로 지정해야합니다.
CREATE TABLE 테이블 이름 (
...
) CHARACTER SET utf8 COLLATE utf8_general_ci;
데이터베이스에 연결할 때는 클라이언트 문자를 UTF-8로 설정해야합니다. 예제는 다음과 같습니다.
$mysqli = new mysqli('host', 'username', 'password', 'database');
$mysqli->set_charset('utf8');
PHP 페이지 헤더에서 응답 헤더를 추가하여 페이지가 UTF-8으로 인코딩되어 있는지 확인하십시오.
<span class="fun">헤더 ( 'content-type : text/html; charset = utf-8');</span>
다음 예제는 데이터베이스에서 취미 필드를 쿼리하고 올바르게 표시하는 방법을 보여줍니다.
<?php
header('Content-Type: text/html; charset=utf-8');
$mysqli = new mysqli('host', 'username', 'password', 'database');
$mysqli->set_charset('utf8');
$sql = "SELECT hobbies FROM users";
$result = $mysqli->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo $row['hobbies'] . '<br>';
}
} else {
echo "0 results";
}
$mysqli->close();
?>
위의 구성을 통해 취미 필드에서의 차량 문제를 효과적으로 피할 수 있으며 특수 문자와 이모티콘의 정상적인 표시를 보장 할 수 있습니다. 프로젝트 요구 사항에 따라 데이터베이스 설계 및 코드 구현을 더욱 최적화 할 수 있습니다.
데이터베이스 및 페이지 인코딩을 올바르게 설정하는 것이 PHP 프로젝트, 특히 이모티콘 및 특수 문자를 포함하는 필드에서 텍스트 콘텐츠의 정상적인 표시를 보장하는 핵심입니다. 이 기사의 방법은 간결하고 실용적이며 대부분의 개발 시나리오에 적합합니다. 도움이되기를 바랍니다.