par
McCallum » 29 oct. 2015, 20:02
Bonjour,
Je cherche à importer certaines données groupées en elles.
J'ai regardé sur la page simpleXMLElement::xpath,
ce lien paraissait intéressant, et bien qu'il cherche des valeurs multiples, il ne répond pas à mon besoin car je ne vois pas de quelle manière il permet d'ordonner.
Exemple de départ (faux, je sais) :
Code : Tout sélectionner
<?php
$string = <<<XML
<lg>
<l n="6b" xml:id="ktu1.3_ii_6b"><w type="verb">tḫtṣb</w></l>
<l n="7" xml:id="ktu1.3_ii_7"><w type="verb">tmḫṣ</w></l>
</lg>
XML;
$xml = simplexml_load_string($string);
foreach($xml->xpath('//lg') as $item) {
# => ici exprimer que je souhaite "concaténer" (mettre à la suite) ("//lg/l/w[@type='verb']") et ("//lg/l[@type='xml:id']")
}
?>
Je voudrai grouper, c'est à dire selon mon modèle précédent, je voudrai obtenir :
- tḫtṣb (verb), ktu1.3_ii_6 (xml:id)
- tmḫṣ (verb), ktu1.3_ii_7 (xml:id)
J'ai évidemment regarder le
W3C.
Le seul résultat que j'ai pu trouver, et ce n'est pas nécessaire pour SImpleXMLElement::xpath est peut-être
string-join ; j'ai encore cherché pour l'application à SimpleXMLElement, sans succès.
Quelques pistes ?
D'avance, merci.
McCallum
Bonjour,
Je cherche à importer certaines données groupées en elles.
J'ai regardé sur la page simpleXMLElement::xpath, [url=http://php.net/manual/en/simplexmlelement.xpath.php#115726]ce lien[/url] paraissait intéressant, et bien qu'il cherche des valeurs multiples, il ne répond pas à mon besoin car je ne vois pas de quelle manière il permet d'ordonner.
Exemple de départ (faux, je sais) :
[code=php]
<?php
$string = <<<XML
<lg>
<l n="6b" xml:id="ktu1.3_ii_6b"><w type="verb">tḫtṣb</w></l>
<l n="7" xml:id="ktu1.3_ii_7"><w type="verb">tmḫṣ</w></l>
</lg>
XML;
$xml = simplexml_load_string($string);
foreach($xml->xpath('//lg') as $item) {
# => ici exprimer que je souhaite "concaténer" (mettre à la suite) ("//lg/l/w[@type='verb']") et ("//lg/l[@type='xml:id']")
}
?>
[/code]
Je voudrai grouper, c'est à dire selon mon modèle précédent, je voudrai obtenir :
- tḫtṣb (verb), ktu1.3_ii_6 (xml:id)
- tmḫṣ (verb), ktu1.3_ii_7 (xml:id)
J'ai évidemment regarder le [url=http://www.w3.org/TR/xpath/#function-contains]W3C[/url].
Le seul résultat que j'ai pu trouver, et ce n'est pas nécessaire pour SImpleXMLElement::xpath est peut-être [url=http://stackoverflow.com/questions/21996965/concatenate-multiple-node-values-in-xpath]string-join[/url] ; j'ai encore cherché pour l'application à SimpleXMLElement, sans succès.
Quelques pistes ?
D'avance, merci.
McCallum