Maison >développement back-end >Problème PHP >Que faire si les caractères chinois PHP SQLSERVER sont tronqués

Que faire si les caractères chinois PHP SQLSERVER sont tronqués

藏色散人
藏色散人original
2020-05-10 11:38:354311parcourir

Que faire si les caractères chinois PHP SQLSERVER sont tronqués

Que dois-je faire si PHP SQLSERVER contient des caractères chinois tronqués ?

Problème de chinois tronqué lorsque PHP se connecte à SQLSERVER

1 La présence du chinois dans l'instruction SQL entraînera l'échec de la requête

2. Le résultat de la requête est que le chinois affichera des caractères tronqués.

Solution 1 (plus simple, recommandée) :

1. Sélectionnez l'encodage ANSI lors de l'enregistrement des fichiers PHP ;

Pièce jointe : VS Code modifie l'encodage du texte par défaut, Fichier->Préférences->Paramètres utilisateur, recherchez l'encodage, changez utf8 en gbk

2. Ajoutez l'en-tête du fichier PHP

header("Content-Type: text/html; CHARSET=GBK");

Solution 2 (plus gênante) :

1. Conservez le fichier PHP dans l'encodage UTF-8 par défaut

2. Transcodez SQL avant d'interroger

$sql = "SELECT '是'='是'"; 
$sql=iconv('UTF-8','GBK',$sql);
 ;

3. Convertir les résultats de requête contenant des colonnes chinoises

$stmt = sqlsrv_query( $conn, $sql);
if($stmt){
    while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC) ) {
        echo iconv(&#39;GBK&#39;,&#39;UTF-8&#39;,$row[0])."<br />";
    }
}

Recommandé : "

Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn