Domanda

Qual è la sintassi corretta per applicare le funzioni di stringa (ad es. " normalize-space ") su un attributo usando la query xpath di seguito?

Query: " ./@ media "

Ho visto esempi di questo altrove ma se lo provo usando la libreria xpath di php non restituisce nulla ...

È stato utile?

Soluzione

L'uso di query () su un oggetto DOMXPath sempre genera un set di nodi (racchiuso in un DOMNodeList object), mai in una stringa.

Non è possibile estrarre i risultati delle funzioni XPath. Devi interrogare i nodi che vuoi elaborare ed elaborarli in PHP.

Altri suggerimenti

Usa assess () invece di query () . Restituirà un risultato digitato. È disponibile da PHP 5.1.

$doc = new DOMDocument();
$xpath = new DOMXpath($doc);
$q = $xpath->evaluate('"test"');
var_dump($q);

uscita:

string(4) "test"
./[normalize-space(@media)

Prova questo.

Che ne dici di questo?

normalize-space(./@media)

Potresti anche provare: ma non credo sia necessario qui.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top