


Résumé des solutions associées au problème d'en-tête php tronqué
Solution à l'en-tête php tronqué : 1. Ajoutez l'instruction "header("Content-type: text/html; charset=utf-8");" à la page PHP ; pour définir l'encodage de la page ; 3. Unifier l'encodage des pages PHP.
L'en-tête php résout les problèmes de code tronqué et d'autres problèmes de code tronqué
Recommandé : "Tutoriel PHP 》
en-tête php pour définir une page php comme encodage utf ou encodage GBK
page php comme encodage utf
header("Content-type: text/html; charset=utf-8");
page php comme encodage gbk
header("Content-type: text/html; charset=gb2312");
La page php est codée en big5
header("Content-type: text/html; charset=big5");
Habituellement, le code ci-dessus est placé sur la page d'accueil de la page php
La différence entre utiliser un en-tête ou une méta pour implémenter l'encodage de page PHP
1. Encodage de page
1. Utilisez la balise l'encodage de la page
Ceci La fonction de la balise est de déclarer quel jeu de caractères l'encodage utilisé par le navigateur du client pour afficher la page xxx peut être GB2312, GBK, UTF-8 (différent de MySQL, qui est UTF8). , etc. Par conséquent, la plupart des pages peuvent utiliser cette méthode pour indiquer au navigateur quel encodage utiliser lors de l'affichage de cette page, afin d'éviter les erreurs d'encodage et les caractères tronqués. Mais parfois, nous constaterons que cette phrase ne fonctionne toujours pas. Quel que soit le nom de xxx, le navigateur utilise toujours le même codage, j'en reparlerai plus tard.
Veuillez noter que appartient aux informations HTML et n'est qu'une déclaration. Cela indique que le serveur a transmis les informations HTML au navigateur.
2. header("content-type:text/html; charset=xxx");
La fonction de cette fonction header() est d'envoyer les informations entre parenthèses au http. en-tête.
Si le contenu entre parenthèses est tel que mentionné dans l'article, la fonction est fondamentalement la même que la balise . Mais la différence est que s’il existe cette fonction, le navigateur utilisera toujours l’encodage xxx que vous avez demandé et ne désobéira jamais, cette fonction est donc très utile. Pourquoi cela se produit-il ? Ensuite, il faut parler de la différence entre l'en-tête HTTPS et les informations HTML :
L'en-tête https est une chaîne envoyée par le serveur avant d'envoyer les informations HTML au navigateur via le protocole HTTP.
Étant donné que la balise méta appartient aux informations HTML, le contenu envoyé par header() atteint le navigateur en premier. Le point populaire est que header() a une priorité plus élevée que meta (je ne sais pas si cela peut être le cas). soit dit). Ajoutez une page php contenant à la fois header("content-type:text/html; charset=xxx") et le navigateur ne reconnaîtra que l'ancien en-tête http et non la méta. Bien entendu, cette fonction ne peut être utilisée qu’au sein des pages PHP.
Il reste également une question : pourquoi le premier fonctionne-t-il définitivement, mais le second ne fonctionne parfois pas ? C'est pourquoi nous voulons ensuite parler d'Apache.
3. AddDefaultCharset
Dans le dossier conf du répertoire racine d'Apache, se trouve l'intégralité du document de configuration d'Apache httpd.conf.
Ouvrez httpd.conf avec un éditeur de texte. La ligne 708 (différentes versions peuvent être différentes) contient AddDefaultCharset xxx, où xxx est le nom d'encodage. La signification de cette ligne de code : définissez le jeu de caractères dans l'en-tête https du fichier de page Web sur l'ensemble du serveur sur votre jeu de caractères xxx par défaut. Avoir cette ligne équivaut à ajouter un en-tête ("content-type: text/html; charset=xxx") à chaque fichier. Vous pouvez maintenant comprendre pourquoi le navigateur utilise toujours gb2312 même si le paramètre méta est utf-8.
S'il y a un en-tête("content-type:text/html; charset=xxx") dans la page Web, le jeu de caractères par défaut sera remplacé par le jeu de caractères que vous avez défini, donc cette fonction sera toujours être utile. Si vous ajoutez un "#" devant AddDefaultCharset xxx, commentez cette phrase et que la page ne contient pas d'en-tête ("content-type..."), alors c'est au tour de la balise méta de prendre effet.
Résumé :
Trions
header("content-type:text/html; charset=xxx") AddDefaultCharset xxx <META http-equiv="content-type" content="text/html; charset=xxx">
Si vous êtes un programmeur Web, ajoutez un en-tête("content-type: text/html ; charset=xxx"), en vous assurant qu'il peut être affiché correctement sur n'importe quel serveur et qu'il a une forte portabilité.
Quant à la phrase AddDefaultCharset xxx, qu'elle doive être commentée ou non est une question d'opinion. Quoi qu'il en soit, je l'ai commenté, mais je dois aussi écrire header() lors de l'écriture d'une page, afin qu'elle puisse être affichée normalement sur le serveur.
2. Encodage de la base de données
Avant d'interroger la base de données, le programme PHP exécute d'abord mysql_query("SET NAMES xxxx"); (charset= xxxx), si charset=utf8 dans la page web, alors xxxx=utf8, si charset=gb2312 dans la page web, alors xxxx=gb2312, presque tous les programmes WEB ont un code commun pour se connecter à la base de données, qui est placé dans un fichier. Dans ce fichier, ajoutez simplement mysql_query("set names").
SET NAMES 显示客户端发送的 SQL 语句中使用什么字符集。因此,SET NAMES 'utf-8'语句告诉服务器“将来从这个客户端传来的信息采用字符集utf-8”。它还为服务器发送回客户端的结果指定了字符集。(例如,如果你使用一 个SELECT语句,它表示列值使用了什么字符集。)
PHP页面编码统一
MySQL数据库编码、html页面编码、PHP或html文件本身编码要全部一致。
1、MySQL数据库编码:建立数据库时指定编码(如gbk_chinese_ci),建立数据表、建立字段、插入数据时不要指定编码,会自动继承数据库的编码。
数据库连接时,也有编码,可以在连接完数据库后,执行
mysql_query('SET NAMES gbk');//将gbk换成你的编码,如utf8。
2、html页面的编码,指的是这一行的设置:
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
3、PHP或html文件本身的编码:用editplus打开php文件或html文件,另存时,选择的编码,如果数据库和页面编码是gbk,则这儿的编码选择ansi;如果数据库和页面编码是utf-8,则这儿也选择utf-8。
4、另外要注意的是,Javascript或Flash中传递的数据是utf-8编码,如果数据库和页面编码是gbk,要进行转码,然后写入数据库。
iconv('utf-8', 'gbk', $content);
5、在PHP程序中,可以加上一行,来指定PHP源程序的编码:
header('Content-type: text/html; charset=gbk');
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Liaison statique (statique: :) implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.
