Maison > Article > développement back-end > En-tête XML PHP
L'en-tête PHP XML est le type de contenu XML sorti du fichier PHP au lieu du contenu d'en-tête par défaut de texte/html. La définition du type de contenu d'en-tête sur XML indique que la sortie vers le navigateur est au format XML. XML signifie Extensible Markup Language, qui désigne les règles de codage des documents. PHP étant un langage de programmation open source, il est utilisé pour définir dynamiquement le contenu Web et les applications côté serveur. De la même manière que le contenu HTML dynamique est généré en PHP, le contenu XML dynamique peut également être généré en PHP.
PUBLICITÉ Cours populaire dans cette catégorie DEVELOPPEUR PHP - Spécialisation | Série de 8 cours | 3 tests simulésCommencez votre cours de développement de logiciels libres
Développement Web, langages de programmation, tests de logiciels et autres
Vous trouverez ci-dessous la syntaxe de l'en-tête PHP XML :
<?php header('Content-Type: text/xml'); ?>
Ci-dessus se trouve la syntaxe de base du type de contenu à modifier en XML lors de l'utilisation de l'en-tête XML PHP.
header(header, replace, http_response_code)
La fonction d'en-tête de base envoie un en-tête HTTP brut au client ; il est appelé avant l'envoi de la sortie.
Arguments :
<?php header ("Content-Type:text/xml"); ?> <xml_content> ………………………… </xml_content>
En PHP, aucune sortie ne peut avoir lieu avant l'occurrence du header() envoyé au navigateur. Content-Type de l'en-tête indique au navigateur comment gérer le contenu. Par exemple, s'il existe un fichier PDF que le navigateur ne peut pas prendre en charge, il offrira la possibilité d'utiliser une autre application. Il vous demandera d'utiliser une autre application sur notre système ou vous demandera de télécharger une application particulière.
Si le type de contenu est text/xml, aucun jeu de caractères n'est spécifié car le fichier est traité comme us-ascii. Pour différents jeux de caractères, il doit être spécifié dans l'en-tête. Pour une utilisation XML en PHP, le type de contenu est spécifié comme « application/xml » et le jeu de caractères est « utf-8 ». L'en-tête de type de contenu fait partie du protocole HTTP et indique au client ou au serveur à quel type de données s'attendre et comment les interpréter.
Différents exemples sont mentionnés ci-dessous :
Code :
<!DOCTYPE html> <html> <body> <?php header("Content-type: text/xml"); echo "<?xml version='1.0' encoding='UTF-8'?>"; echo "<note>"; echo "Hello, this is first PHP XML header"; echo "\n"; echo "<message>Run the code to see the output</message>"; echo "</note>"; ?> </body> </html>
Sortie :
Ici, le type de contenu est l'en-tête est maintenant au format XML.
XML est pris en charge par un large éventail d'utilisateurs Web et d'outils XML qui sont neutres en matière d'appareil, de fournisseur et de plate-forme.
Content-type: text/xml; charset="utf-8" <?xml version="1.0" encoding="utf-8"?>
Ci-dessus se trouve la valeur du jeu de caractères recommandée à utiliser avec text/xml. Les processeurs MIME et XML considèrent l'entité comme UTF-8 incluse. Si, dans les cas où les données sont envoyées à l'aide d'une requête SMTP, XML doit utiliser le codage de transfert de contenu ou le codage base64. Pour les autres types de requêtes comme ESMTP, NNTP, HTTP, etc., l'encodage de transfert de contenu n'est pas requis.
Content-type: text/xml; charset="utf-16" {BOM}<?xml version='1.0' encoding='utf-16'?>
Le jeu de caractères utf-16 est utilisé uniquement lorsque le XML est transmis via HTTP avec un protocole binaire propre sans effectuer de transformations CR et LF. Comme HTTP est un protocole binaire, l'encodage du transfert de contenu n'est pas nécessaire ici.
Content-type: text/xml {BOM}<?xml version="1.0" encoding="utf-16"?>
Ici, le paramètre charset a été omis. Dans de tels cas, les processeurs XML supposent donc que le jeu de caractères est « us-ascii ». Cette valeur par défaut est vraie pour le texte/xml qui est transporté à l'aide d'une requête HTTP.
Mais l'omission du jeu de caractères n'est pas du tout recommandée pour l'en-tête texte/xml.
Content-type: application/xml; charset="utf-16" {BOM}<?xml version="1.0"?>
Il est recommandé de l'utiliser avec le type de contenu d'en-tête comme application/xml. Comme le jeu de caractères est fourni ici, les processeurs XML traitent l'entité comme codée en utf-16.
Content-type: application/xml <?xml version='1.0'?>
Ici, il n'y a ni le paramètre BOM ni le paramètre charset. XML, qui ne connaît pas le processeur, ne doit faire aucune hypothèse sur le jeu de caractères de l'entité XML.
Code :
<!DOCTYPE html> <html> <body> <?php header("Content-type: application/xml"); $arr =[ "empName" => "Karthik", "empid" => 675, "role" => "UI developer", "age" => 25, "city" => "Vizag" ]; echo json_encode($arr); ?> </body> </html>
Sortie :
Code :
<!DOCTYPE html> <html> <body> <?php header("Content-type: text/xml"); echo "<?xml version='1.0' encoding='UTF-8'?>"; $data = [1,2,3,4,5,6,7,8,9]; echo json_encode($data); ?> </body> </html>
Sortie :
Avec cela, nous concluons notre sujet « En-tête XML PHP ». Nous avons vu ce qu'est l'en-tête PHP XML ; changer le type de contenu en XML fait ressortir beaucoup de différence pour la requête-réponse http. Nous avons analysé la syntaxe de déclaration de l'en-tête XML dans le code PHP. Un jeu de caractères est l'une des parties importantes de PHP qui décrit la forme des données envoyées. J'ai vu divers jeux de caractères tels que utf-8 et utf-16, jeux de caractères us-ascii par défaut. J'ai également vu comment l'en-tête php XML fonctionne avec certains des exemples répertoriés ci-dessus.
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!