fork(1) download
  1. <?php
  2.  
  3. $html = '<select class="general class"
  4. data-url="/foo/bar/">
  5. <option value=""></option>
  6. <option Selected value="Bar 1">Foo 1</option>
  7. <option value="Bar 2">Foo 2</option>
  8. <option value="Bar 3">Foo 3</option>
  9. <option value="Bar 4">Foo 4</option>
  10. <option value="Bar 5">Foo 5</option>
  11. <option value="Bar 6">Foo 6</option>
  12. <option value="Bar 7">Foo 7</option>
  13. </select>';
  14.  
  15. $dom = new \DomDocument('1.0', 'UTF-8');
  16. $dom->loadHTML($html);
  17.  
  18. $xp = new \DOMXpath($dom);
  19. $opts_txt = $xp->query('//select[@data-url="/foo/bar/"]/option/text()');
  20. $opts_vals = $xp->query('//select[@data-url="/foo/bar/"]/option/@value');
  21.  
  22. foreach ($opts_txt as $key => $opt) {
  23. echo $opt->nodeValue. "\n";
  24. echo $opts_vals->item($key)->nodeValue. "\n\n";
  25. }
Success #stdin #stdout 0.02s 24556KB
stdin
Standard input is empty
stdout
Foo 1


Foo 2
Bar 1

Foo 3
Bar 2

Foo 4
Bar 3

Foo 5
Bar 4

Foo 6
Bar 5

Foo 7
Bar 6