Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework
Zend Framework Forum d'entraide sur la programmation PHP avec Zend Framework. Avant de poster -> FAQ ZF, Cours ZF
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/11/2011, 17h43   #1
Membre à l'essai
 
Inscription : mars 2007
Messages : 88
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 88
Points : 22
Points : 22
Par défaut Meilleur facon de gerer un XML

Bonjour,

J'ai un petit souci : je me pose la question de la meilleure facon de gerer un fichier XML.

En effet. Je ne vois pas vraiment d'élément qui me permet de gérer de manière automatique l'ingestion d'un XML.

Je pensais au départ me faire une classe qui me permettrait de gerer les messages, en associant une description de mes éléments XML. Mais le souci qui se pose va être quand je vais vouloir sauvegarder mes éléments dans ma base de donnée. Quand je vais sauver dans 2 tables différentes des données, je vais avoir quelque souci si jamais je dois aussi écrire ces données dans une table M,N

Je sais que en java, il y a un mécanisme qui permet de sauvegarder le contenu de chaque xml, en le matchant avec des classes pré créer. Y a t'il un équivalent en php/Zend?

A savoir, que je n'ai acces a mon xml qu'en html simple, pas de rest ni de soap.

Merci bien !
Valkirion est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2011, 17h58   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 991
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 991
Points : 5 031
Points : 5 031
Citation:
je me pose la question de la meilleure facon de gerer un fichier XML.
Utilise DOMDocument ou SimpleXML pour manipuler du XML en PHP.

Citation:
Je sais que en java, il y a un mécanisme qui permet de sauvegarder le contenu de chaque xml, en le matchant avec des classes pré créer. Y a t'il un équivalent en php/Zend?
Regarde DOMDocument::registerNodeClass. Mais si c'est pour faire des modèles hybrides SQL / XML, le mieux c'est de faire un adaptateur.
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 11h21   #3
Membre à l'essai
 
Inscription : mars 2007
Messages : 88
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 88
Points : 22
Points : 22
Oui, c'est ce que je fais. Mais je n'ai pas envie d'avoir a me taper un mapping de mes éléments. je voudrais en fait savoir quelle serait selon vous la meilleure méthode pour les matcher de manière auto. En fait, je me demande si il existe un élément générique qui permet de mettre une interface entre le xml et les classes que je vais devoir gérer. Que je n'ai plus qu'a lui passer la root classe, et le xml , et qu'il me construise l'équivalent de ma structure en les mappant sur les modèles, et qu'une fois que je l'ai, je la sauvegarde . Je pense que rien de tel n'as été prévu dans zend ?
Valkirion est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 10h42   #4
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 991
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 991
Points : 5 031
Points : 5 031
Pas que je sache mais regarde dans ton IDE en bas à droite si y'a pas un bouton en forme de baguette magique marqué "fais mon travail".
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/12/2011, 08h39   #5
Membre à l'essai
 
Inscription : mars 2007
Messages : 88
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 88
Points : 22
Points : 22
Non, c'est juste la barre de recherche zend dans le coin inférieur droit.

Pour en revenir au sujet, je pensais en fait utiliser un descripteur d'élément qui serait appelé de manière récursive sur chaque noeud rencontré, afin de récupérer la structure du noeud courant de l'XML, afin juste d'avoir le traitement associer. Mais je me penche sur le souci dans le cas de structure N*M dans la BD, ainsi que dans le cas ou il faut sauver l'info relative sur plusieurs table.

Et comme le disait si bien mon professeur , un bon informaticien est un informaticien paresseux , du coup je préfère demander si il n'existait pas quelque chose de similaire déja fait, vu que comme il le disait si bien, une question ne coute rien ^^ .

Bon, après ça, c'est vrai qu'il n'as pas parlé qu'un bon info était sympa ou pas ^^
Valkirion est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/12/2011, 10h19   #6
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 991
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 991
Points : 5 031
Points : 5 031
Malheureusement pour toi, PHP est loin d'être aussi complet que Java, tu vas devoir fabriquer ce comportement de tes propre main.

C'est quoi exactement la structure de ton arbre et quelles sont les données que tu veux manipuler ?
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/12/2011, 11h06   #7
Membre à l'essai
 
Inscription : mars 2007
Messages : 88
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 88
Points : 22
Points : 22
Bah, c'est un standard de l'industrie cinématographique, mais je ne peux pas le poster ici. C'est un format défini, mais qui a quelque chose comme 7 niveau de profondeur pr représenter la structure d'un cinéma.

Les données sont essentiellement des strings, ce qui m'as le plus ennuié, c'est les définitions de types qui ajoute un degré d'encapsulation sur les noeuds de l'xml. Mais a part ca, ca a été , merci !
Valkirion est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h29.


 
 
 
 
Partenaires

Hébergement Web