Maison > Article > développement back-end > Comment supprimer les caractères tronqués en php
Comment supprimer la partie tronquée en PHP : 1. Définissez l'encodage du fichier PHP lui-même pour qu'il corresponde à l'encodage de la page Web ; 2. Définissez l'encodage de PHP et de la base de données pour qu'il soit cohérent ; Modifiez l'encodage lors de l'appel de la fonction PHP.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3
php chinois supprimer le tronqué partie, Solutions chinoises PHP aux codes tronqués
1. Le premier est l'encodage de la page Web PHP
1 L'encodage du fichier php lui-même et l'encodage de la page Web doivent correspondre
a. alors php devrait afficher l'en-tête : header("Content- Type: text/html; charset=gb2312"), ajouter une page statique, le format d'encodage de tous les fichiers est ANSI, vous pouvez l'ouvrir avec le Bloc-notes, enregistrer sous, sélectionner le encodage au format ANSI et écrasez le fichier source.
b. Si vous souhaitez utiliser l'encodage utf-8, alors php doit afficher l'en-tête : header("Content-Type: text/html; charset=utf-8"), ajout de page statique, format d'encodage. de tous les fichiers est utf-8. L'enregistrement au format utf-8 peut être un peu gênant. Généralement, les fichiers utf-8 auront une nomenclature au début. Si vous utilisez une session, il y aura des problèmes. Vous pouvez utiliser editplus pour enregistrer. Sélection des paramètres->Fichier-> Signature UTF-8, sélectionnez Toujours supprimer, puis enregistrez pour supprimer les informations de nomenclature.
2.php lui-même n'est pas Unicode, toutes les fonctions substr et autres doivent être modifiées en mb_substr (l'extension mbstring doit être installée ou utiliser iconv pour transcoder) ;
2. Interaction des données entre PHP et Mysql
L'encodage de PHP et de la base de données doit être cohérent
1 Modifiez le fichier de configuration mysql my.ini ou my.cnf. pour mysql
[mysql] default-character-set=utf8 [mysqld] default-character-set=utf8 default-storage-engine=MyISAM
Ajouter sous [mysqld] :
default-collation=utf8_bin init_connect='SET NAMES utf8'
2. Ajoutez mysql_query("set names 'coding'"); avant le programme php qui doit effectuer les opérations de base de données. cohérent avec le codage php. Si le codage php est gb2312, alors le codage mysql est gb2312. S'il s'agit de utf-8, alors le codage mysql est utf8, de sorte qu'il n'y aura pas de caractères tronqués lors de l'insertion ou de la récupération de données
.[Apprentissage recommandé : Tutoriel vidéo PHP]
3. PHP est lié au système d'exploitation
L'encodage de Windows et Linux est différent Dans l'environnement Windows, lors de l'appel de fonctions PHP, si les paramètres sont encodés en utf-8, des erreurs se produiront, telles que move_uploaded_file(). , filesize() , readfile(), etc. Ces fonctions sont souvent utilisées lors du traitement des téléchargements et des téléchargements. L'erreur suivante peut se produire lors de l'appel :
Warning: move_uploaded_file()[function.move-uploaded-file]:failed to open stream:.
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!