Maison >développement back-end >Problème PHP >Comment résoudre le problème des paramètres tronqués dans php get

Comment résoudre le problème des paramètres tronqués dans php get

藏色散人
藏色散人original
2020-11-20 09:37:002541parcourir

Solutions aux paramètres d'obtention php tronqués : 1. Utilisez la méthode "iconv("gb2312", "UTF-8",$gonghui);" 2. Utilisez la méthode "mb_convert_encoding" ; pour résoudre le problème tronqué.

Comment résoudre le problème des paramètres tronqués dans php get

Recommandé : "Tutoriel vidéo PHP"

PHP utilise la méthode get pour obtenir le chinois à partir du url Solutions aux caractères tronqués

Voici deux méthodes

La première méthode utilise $gonghui = iconv("gb2312","UTF-8",$gonghui);

La deuxième méthode

**  
* 多字节字符串编码转换函数  
 
*  
 
* @param string str 需要进行编码转换的字符串  
 
* @param string to_encoding 指定转换为某种编码,如:gb2312、gbk、utf-8等  
 
* @param mixed from_encoding 混合指定原来字串的编码,如:同时指定 JIS, eucjp-win, sjis-win 混合编码  
 
* @return string  
 
string mb_convert_encoding ( string str, string to_encoding [, mixed from_encoding] )  
**/

La fonction mb_convert_encoding est la fonction de conversion d'encodage de chaîne multi-octets interne de PHP, qui peut être utilisée dans presque toutes les situations où elle est nécessaire. Tous les encodages. PHP >= 4.0.6, 5 versions prises en charge.

Obtenez directement reg.php?gh=XX ;

 //工会登入参
$gonghui = $_GET['gh'];

Le $gonghui obtenu est codé en gb2312 et affiché sur la page Web utf-8, qui affiche des caractères tronqués

est changé en

 //工会登入参数
 $gonghui = $_GET['gh'];
 $gonghui = mb_convert_encoding($gonghui, "UTF-8", "gb2312");

L'affichage sera normal

Convertir la page entière

Cette méthode est applicable à tous les environnements de codage. De cette façon, le jeu de caractères autre que les 128 premiers caractères (caractères d'affichage) est représenté par NCR (la référence de caractère numérique, telle que "caractères chinois" sera convertie sous la forme "汉字"). Cet encodage est La page peut être affichée normalement dans n'importe quel environnement de codage.

Ajoutez les trois lignes de code suivantes en tête du fichier php :

mb_internal_encoding("gb2312");  // 这里的gb2312是你网站原来的编码     
mb_http_output("HTML-ENTITIES");     
ob_start('mb_output_handler');

L'utilisation de la fonction mb_convert_encoding nécessite d'activer la mbstring de PHP (multi -chaîne d'octets).

Si l'extension mbstring de PHP n'est pas activée, vous devez définir les paramètres suivants pour permettre à PHP de prendre en charge l'extension.

1. Environnement du serveur Windows

Modifiez le fichier php.ini, supprimez le ; devant extension=php_mbstring.dll et redémarrez le serveur Web.

2. Environnement serveur Linux

Ajoutez le paramètre de compilation --enable-mbstring=cn lors de la compilation de la configuration, puis compilez et installez 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