|
|
|
|
Posté par
sly-bzh, le mardi 12 février 2008 à 11:37:12-<uniprot xsi:schemaLocation="http://uniprot.org/uniprot http://www.uniprot.org/support/docs/uniprot.xsd"> -<entry dataset="Swiss-Prot" created="2007-02-06" modified="2007-10-02" version="5"> <accession>A0A373</accession> <name>RK16_COFAR</name> ... -<comment type="subunit"> <text>Part of the 50S ribosomal subunit.</text> </comment> -<comment type="subcellular location"> <text>Plastid, chloroplast.</text> </comment> ... </entry> </uniprot>
Configuration: Windows XP Firefox 2.0.0.12
Bonjour,
Tu peux y arriver en utilisant le DOM. Regarde sur ce site : http://fr.php.net/dom tu as toutes les fonctions du DOM pour le faire. Thamior. |
J'étais pluôt parti pour utiliser le simplexml et j'avais déja "créé" ça (oui je sais j'ai oublié de le mettre dans le premier post...)
$xml = simplexml_load_file('http://beta.uniprot.org/uniprot/A0A373.xml');
$subcellular_location = $xml->entry[0]->comment['value="subcellular location"'];
echo "<BR /> la localisation subcellulaire de la protéine est : ".$subcellular_location;
Mais évidemment ça marche pas sinon je serais pas ici XD Simplexml m'avait l'air plus simple à utiliser que le DOM mais bon je vais voir avec le DOM Merci Proverbes breton : Si les mouettes ont pied, il est temps de virer Il vaut mieux être saoul que con, ça dure moins longtemps |
En faite, SimpleXML c'est du DOM mais en très simplifié.
J'ai fait un code quasi similaire à ce que tu veux faire et j'ai été obligé d'utiliser le DOM. Le DOM est plus complet, tu devrais donc trouver toutes les fonctions dont tu as besoin. Thamior. |
Etant donné que je ne suis pas Breton pour rien, je me suis entêté avec simplexml (je l'avoue ce n'est pas tant parce que je suis tétu que parce que je suis fainéant et DOM me faisait peur....)
Donc voilà ce que j'ai trouvé et surtout ce que j'ai réussi à faire. $xml = simplexml_load_file('http://beta.uniprot.org/uniprot/A0T0M2.xml');
foreach($xml->entry[0]->comment as $comment)
{
switch((string) $comment['type']){
case 'subcellular location':
$location=$comment->text;
echo "<BR /> la localisation subcellulaire de la protéine est : ".$location;
if ($location == '%chloroplast%')
{$nbre_chloro++;}
break;
}
}
Certes, ça marche mais bon j'aurais aimé savoir s'il était possible de le faire sans passer par une boucle foreach parceque j'ai inclus ça dans un script assez lourd, il doit aller chercher des infos sur environ 100 000 protéines donc je cherche toutes les possibilités pour accélérer tout ça. Si c'est possible de le faire sans boucle tant mieux mais sinon tant pis, je suppose que de toutes façon ce n'est pas tant que ça la boucle qui va ralentir, étant donné qu'il va chercher le xml sur un site éloigné. Merci de votre réponse Proverbes breton : Si les mouettes ont pied, il est temps de virer Il vaut mieux être saoul que con, ça dure moins longtemps |
Je ne connais pas d'autres boucles pour utiliser le DOM que le foreach...
Je ne peux pas t'aider plus... désolé... Thamior. |
Pas de problème. De toutes façon maintenant que c'est parti j'en ai pour quelques dizaines d'heures et une fois que ce sera fait je n'aurais plus à le refaire...
Merci qund même ! Proverbes breton : Si les mouettes ont pied, il est temps de virer Il vaut mieux être saoul que con, ça dure moins longtemps |
| 06/03 20h05 | [Linux] Gestion des attributs de fichiers sur ext2 | Sécurité |
| 25/03 15h24 | PHP Parse error: unexpected '<' in ... eval()'d code on line | PHP |
| 21/05 16h32 | Parse error: syntax error, unexpected $end | PHP |
| 20/04 18h59 | [PHP] Fonction mail() | PHP |
| 04/11 10h07 | [PHP] Parse error, unexpected T_STRING, expecting ',' or ';' | PHP |
| 07/02 11h17 | [java - xml] Parser sous window puis unix | 3 |
| 02/05 12h06 | A quoi sert Microsoft XML Parser Version 4 | 2 |
| 31/08 12h39 | Késaco "xml parsing failed | 3 |
| 07/05 12h28 | [C++ - XML] Parsíng fichier XML avec Xerces | 0 |
![]() | DriveImage XML - DriveImage XML est un programme permettant de faire des images du système (partitions et lecteurs logiques) à des fins de... | Catégorie: Sauvegarde Licence: Freeware/gratuit |
![]() | WAMP Server - WAMP5 (WAMP signifiant Windows Apache Mysql PHP) est une plateforme de développement Web sous Windows. Il vous permet de... | Catégorie: Serveurs Licence: Freeware/gratuit |
![]() | FreeMind - FreeMind est un logiciel de Mind mapping entièrement libre, permettant de créer des cartes heuristiques permettant de... | Catégorie: Organisation Licence: Open Source |
![]() | PSPad - PSPad est un excellent éditeur de texte. Il est utile pour travailler sur du simple texte, mais aussi sur du HTML, CSS,... | Catégorie: Développement Licence: Freeware/gratuit |
![]() | U.S. Robotics Wireless Turbo | Catégorie: Point d'accès pour réseaux sans fil |