Citat:
Originalno napisao Dušan Dželebdžić
|
Od PHP 5.3 možeš koristiti PHP funkcije kao XPath funkcije
http://php.net/manual/en/domxpath.re...pfunctions.php
PHP kôd:
libxml_use_internal_errors(true);
$html = new DOMDocument();
$html->loadHtml('
<a href="foo">Foo</a>
<a href="bar">Bar</a>
<a href="neki_dinamicki_generisani_link_do_cenovnika">Prices for neki proizvod</a>
');
$xpath = new DOMXPath( $html );
$xpath->registerNamespace('php', 'http://php.net/xpath');
$xpath->registerPHPFunctions();
$cenovnik = $xpath->evaluate("//a[php:functionString('preg_match', '/cenovnik/', @href) = 1]");
// $cenovnik = $xpath->evaluate("//a[@href='neki_dinamicki_generisani_link_do_cenovnika']");
// $cenovnik = $xpath->evaluate("//a[contains(@href,'cenovnik')]");
echo $cenovnik->item(0)->nodeValue . PHP_EOL;
echo $cenovnik->item(0)->getAttribute('href') . PHP_EOL;