Maison développement back-end Problème PHP Comment convertir php+xml et tableau entre eux

Comment convertir php+xml et tableau entre eux

Apr 26, 2023 am 10:28 AM

Dans le développement Web, les formats XML et tableau sont souvent utilisés pour stocker et transmettre des données. XML est un langage de balisage souvent utilisé pour la description des données et la transmission interactive, tandis que les tableaux sont une structure de données souvent utilisée pour le traitement des données et les opérations dans les programmes. Dans le langage PHP, nous pouvons convertir PHP en XML et en tableaux, et cette conversion est très pratique et rapide.

Cet article présente principalement les méthodes de conversion mutuelle entre PHP, XML et tableaux en PHP, y compris les méthodes de conversion de XML en tableaux et de tableaux en XML.

1. Conversion mutuelle entre PHP et XML

En PHP, nous pouvons utiliser l'extension SimpleXML pour réaliser une conversion mutuelle entre PHP et XML. SimpleXML est une extension PHP intégrée pour traiter les données dans des fichiers XML. Elle peut convertir des fichiers XML en objets ou tableaux PHP, et également convertir des objets ou tableaux PHP en fichiers XML.

  1. Convertir un fichier XML en tableau PHP

Pour convertir un fichier XML en tableau PHP, vous devez utiliser la fonction simplexml_load_file dans l'extension SimpleXML. La fonction simplexml_load_file peut lire le fichier XML au chemin spécifié et renvoyer un objet SimpleXMLElement, puis convertir les informations du fichier XML en un tableau PHP en parcourant l'objet SimpleXMLElement.

Ce qui suit est un exemple de code pour convertir un fichier XML en tableau PHP :

$xmlStr = <<<XML
<?xml version=&#39;1.0&#39;?>
<menu>
  <item>
    <name>Chicken Curry</name>
    <price>8.95</price>
    <description>A spicy dish with chicken, carrots, and potatoes</description>
  </item>
  <item>
    <name>Beef Stir Fry</name>
    <price>10.95</price>
    <description>A savory dish with beef, mushrooms, and peppers</description>
  </item>
</menu>
XML;

$xml = simplexml_load_string($xmlStr);
$menu = [];

foreach ($xml->item as $item) {
    $menu[] = [
        'name' => (string) $item->name,
        'price' => (float) $item->price,
        'description' => (string) $item->description,
    ];
}

print_r($menu);
Copier après la connexion

Exécutez le code ci-dessus, le résultat de sortie est :

Array
(
    [0] => Array
        (
            [name] => Chicken Curry
            [price] => 8.95
            [description] => A spicy dish with chicken, carrots, and potatoes
        )

    [1] => Array
        (
            [name] => Beef Stir Fry
            [price] => 10.95
            [description] => A savory dish with beef, mushrooms, and peppers
        )

)
Copier après la connexion
Copier après la connexion
  1. Convertir un tableau PHP en fichier XML

Convertir un tableau PHP dans un fichier XML, les données du tableau doivent être organisées selon les règles de syntaxe XML. En PHP, nous pouvons utiliser la classe SimpleXMLElement pour créer des éléments XML et utiliser une boucle foreach pour parcourir les données du tableau, ajouter les données aux éléments XML un par un, et enfin générer ou enregistrer le fichier XML dans un emplacement spécifié. localisation via la méthode asXML de l'objet SimpleXMLElement.

Ce qui suit est un exemple de code pour convertir un tableau PHP en fichier XML :

$menu = [
    [
        'name' => 'Chicken Curry',
        'price' => 8.95,
        'description' => 'A spicy dish with chicken, carrots, and potatoes'
    ],
    [
        'name' => 'Beef Stir Fry',
        'price' => 10.95,
        'description' => 'A savory dish with beef, mushrooms, and peppers'
    ]
];

$xml = new SimpleXMLElement('<menu></menu>');
foreach ($menu as $item) {
    $menuItem = $xml->addChild('item');
    $menuItem->addChild('name', $item['name']);
    $menuItem->addChild('price', $item['price']);
    $menuItem->addChild('description', $item['description']);
}

$xmlStr = $xml->asXML();
echo $xmlStr;
Copier après la connexion

Exécutez le code ci-dessus, le résultat de sortie est :

<?xml version="1.0"?>
<menu>
  <item>
    <name>Chicken Curry</name>
    <price>8.95</price>
    <description>A spicy dish with chicken, carrots, and potatoes</description>
  </item>
  <item>
    <name>Beef Stir Fry</name>
    <price>10.95</price>
    <description>A savory dish with beef, mushrooms, and peppers</description>
  </item>
</menu>
Copier après la connexion
Copier après la connexion

2. Conversion entre PHP et les tableaux

En PHP, nous pouvons utiliser json_encode et La fonction json_decode est utilisée pour convertir PHP et les tableaux entre eux. La fonction json_encode convertit un tableau en PHP en une chaîne au format JSON et renvoie la chaîne convertie ; la fonction json_decode convertit une chaîne au format JSON en un tableau en PHP.

  1. Convertir un tableau PHP en chaîne au format JSON

Pour convertir un tableau PHP en chaîne au format JSON, vous devez utiliser la fonction json_encode. La fonction json_encode peut convertir un tableau en PHP en une chaîne au format JSON et renvoyer une valeur représentant la chaîne JSON.

Ce qui suit est un exemple de code pour convertir un tableau PHP en une chaîne au format JSON :

$menu = [
    [
        'name' => 'Chicken Curry',
        'price' => 8.95,
        'description' => 'A spicy dish with chicken, carrots, and potatoes'
    ],
    [
        'name' => 'Beef Stir Fry',
        'price' => 10.95,
        'description' => 'A savory dish with beef, mushrooms, and peppers'
    ]
];

$json = json_encode($menu);
echo $json;
Copier après la connexion

Exécutez le code ci-dessus, le résultat de sortie est :

[{"name":"Chicken Curry","price":8.95,"description":"A spicy dish with chicken, carrots, and potatoes"},{"name":"Beef Stir Fry","price":10.95,"description":"A savory dish with beef, mushrooms, and peppers"}]
Copier après la connexion
  1. Convertissez une chaîne au format JSON en un tableau PHP

Convertir JSON Pour convertir la chaîne formatée en tableau PHP, vous devez utiliser la fonction json_decode. La fonction json_decode peut convertir une chaîne au format JSON en tableau en PHP et renvoyer une valeur représentant le tableau PHP.

Ce qui suit est un exemple de code pour convertir une chaîne au format JSON en un tableau PHP :

$json = '[{"name":"Chicken Curry","price":8.95,"description":"A spicy dish with chicken, carrots, and potatoes"},{"name":"Beef Stir Fry","price":10.95,"description":"A savory dish with beef, mushrooms, and peppers"}]';

$menu = json_decode($json, true);
print_r($menu);
Copier après la connexion

Exécutez le code ci-dessus, le résultat de sortie est :

Array
(
    [0] => Array
        (
            [name] => Chicken Curry
            [price] => 8.95
            [description] => A spicy dish with chicken, carrots, and potatoes
        )

    [1] => Array
        (
            [name] => Beef Stir Fry
            [price] => 10.95
            [description] => A savory dish with beef, mushrooms, and peppers
        )

)
Copier après la connexion
Copier après la connexion

3. Conversion entre les tableaux PHP et XML

En PHP, nous vous. peut utiliser l'extension SimpleXML et la fonction json_encode/json_decode pour convertir PHP en XML et en tableaux. Plus précisément, nous pouvons d'abord convertir le fichier XML en un tableau PHP, puis convertir le tableau PHP en une chaîne au format JSON. De la même manière, nous pouvons également convertir une chaîne au format JSON en un tableau PHP, puis convertir le tableau PHP en ; un objet SimpleXMLElement, et enfin obtenez un fichier XML.

Ce qui suit est un exemple de code complet de conversion de tableaux PHP et XML entre eux :

$xmlStr = <<<XML
<?xml version=&#39;1.0&#39;?>
<menu>
  <item>
    <name>Chicken Curry</name>
    <price>8.95</price>
    <description>A spicy dish with chicken, carrots, and potatoes</description>
  </item>
  <item>
    <name>Beef Stir Fry</name>
    <price>10.95</price>
    <description>A savory dish with beef, mushrooms, and peppers</description>
  </item>
</menu>
XML;

// 将XML文件转换为PHP数组
$xml = simplexml_load_string($xmlStr);
$menu = [];
foreach ($xml->item as $item) {
    $menu[] = [
        'name' => (string) $item->name,
        'price' => (float) $item->price,
        'description' => (string) $item->description,
    ];
}

// 将PHP数组转换为JSON格式的字符串
$json = json_encode($menu);

// 将JSON格式的字符串转换为PHP数组
$menu = json_decode($json, true);

// 将PHP数组转换为SimpleXMLElement对象
$xml = new SimpleXMLElement('<menu></menu>');
foreach ($menu as $item) {
    $menuItem = $xml->addChild('item');
    $menuItem->addChild('name', $item['name']);
    $menuItem->addChild('price', $item['price']);
    $menuItem->addChild('description', $item['description']);
}

// 输出XML文件
$xmlStr = $xml->asXML();
echo $xmlStr;
Copier après la connexion

Exécutez le code ci-dessus, le résultat de sortie est :

<?xml version="1.0"?>
<menu>
  <item>
    <name>Chicken Curry</name>
    <price>8.95</price>
    <description>A spicy dish with chicken, carrots, and potatoes</description>
  </item>
  <item>
    <name>Beef Stir Fry</name>
    <price>10.95</price>
    <description>A savory dish with beef, mushrooms, and peppers</description>
  </item>
</menu>
Copier après la connexion
Copier après la connexion

Résumé

Ce qui précède est la méthode de conversion de PHP en XML et en tableaux , très simple et pratique. Qu'il s'agisse de transmission de données front-end ou back-end ou de traitement de données, nous pouvons effectuer les conversions correspondantes en fonction des besoins réels. Il convient de noter que lors de la conversion entre XML et tableaux, faites attention à la structure et au format des données pour éviter les erreurs inutiles.

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

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 !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

OWASP Top 10 PHP: Décrivez et atténue les vulnérabilités communes. OWASP Top 10 PHP: Décrivez et atténue les vulnérabilités communes. Mar 26, 2025 pm 04:13 PM

L'article traite des 10 meilleures vulnérabilités de l'OWASP dans les stratégies PHP et d'atténuation. Les problèmes clés incluent l'injection, l'authentification brisée et les XS, avec des outils recommandés pour surveiller et sécuriser les applications PHP.

PHP 8 JIT (juste à temps) Compilation: comment cela améliore les performances. PHP 8 JIT (juste à temps) Compilation: comment cela améliore les performances. Mar 25, 2025 am 10:37 AM

La compilation JIT de PHP 8 améliore les performances en compilant le code fréquemment exécuté en code machine, bénéficiant aux applications avec des calculs lourds et en réduisant les temps d'exécution.

Téléchargements de fichiers sécurisés PHP: prévention des vulnérabilités liées au fichier. Téléchargements de fichiers sécurisés PHP: prévention des vulnérabilités liées au fichier. Mar 26, 2025 pm 04:18 PM

L'article traite de la sécurisation des téléchargements de fichiers PHP pour éviter les vulnérabilités comme l'injection de code. Il se concentre sur la validation du type de fichier, le stockage sécurisé et la gestion des erreurs pour améliorer la sécurité de l'application.

Encryption PHP: cryptage symétrique vs asymétrique. Encryption PHP: cryptage symétrique vs asymétrique. Mar 25, 2025 pm 03:12 PM

L'article traite du cryptage symétrique et asymétrique en PHP, en comparant leur aptitude, leurs performances et leurs différences de sécurité. Le chiffrement symétrique est plus rapide et adapté aux données en vrac, tandis que l'asymétrique est utilisé pour l'échange de clés sécurisé.

Authentification PHP & amp; Autorisation: mise en œuvre sécurisée. Authentification PHP & amp; Autorisation: mise en œuvre sécurisée. Mar 25, 2025 pm 03:06 PM

L'article examine la mise en œuvre d'authentification et d'autorisation robustes dans PHP pour empêcher un accès non autorisé, détaillant les meilleures pratiques et recommandant des outils d'amélioration de la sécurité.

Limitation du taux de l'API PHP: stratégies de mise en œuvre. Limitation du taux de l'API PHP: stratégies de mise en œuvre. Mar 26, 2025 pm 04:16 PM

L'article traite des stratégies de mise en œuvre de la limitation du taux d'API en PHP, y compris des algorithmes comme un godet de jeton et un seau qui fuit, et en utilisant des bibliothèques comme Symfony / Rate-Limiter. Il couvre également la surveillance, l'ajustement dynamiquement des limites de taux et la main

Protection PHP CSRF: comment empêcher les attaques du CSRF. Protection PHP CSRF: comment empêcher les attaques du CSRF. Mar 25, 2025 pm 03:05 PM

L'article traite des stratégies pour prévenir les attaques du CSRF dans PHP, notamment en utilisant des jetons CSRF, des cookies de même site et une bonne gestion de session.

Validation d'entrée PHP: meilleures pratiques. Validation d'entrée PHP: meilleures pratiques. Mar 26, 2025 pm 04:17 PM

L'article traite des meilleures pratiques pour la validation des entrées PHP pour améliorer la sécurité, en se concentrant sur des techniques telles que l'utilisation de fonctions intégrées, une approche de liste blanche et une validation côté serveur.

See all articles