d3bb99ce903a5459a87c0b8a6f6e276b2afed13c.svn-base 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. // $Rev: 179 $
  3. // -----------------------------------------------------------------------------
  4. // setup
  5. error_reporting(E_ALL);
  6. require_once('../simple_html_dom.php');
  7. $dom = new simple_html_dom;
  8. // -----------------------------------------------------------------------------
  9. // test problem of last emelemt not found
  10. $str = <<<HTML
  11. <img src="src0"><p>foo</p><img src="src2">
  12. HTML;
  13. function callback_1($e) {
  14. if ($e->tag==='img')
  15. $e->outertext = '';
  16. }
  17. $dom->load($str);
  18. $dom->set_callback('callback_1');
  19. assert($dom=='<p>foo</p>');
  20. // -----------------------------------------------
  21. // innertext test
  22. function callback_2($e) {
  23. if ($e->tag==='p')
  24. $e->innertext = 'bar';
  25. }
  26. $dom->load($str);
  27. $dom->set_callback('callback_2');
  28. assert($dom=='<img src="src0"><p>bar</p><img src="src2">');
  29. // -----------------------------------------------
  30. // attributes test
  31. function callback_3($e) {
  32. if ($e->tag==='img')
  33. $e->src = 'foo';
  34. }
  35. $dom->load($str);
  36. $dom->set_callback('callback_3');
  37. assert($dom=='<img src="foo"><p>foo</p><img src="foo">');
  38. function callback_4($e) {
  39. if ($e->tag==='img')
  40. $e->id = 'foo';
  41. }
  42. $dom->set_callback('callback_4');
  43. assert($dom=='<img src="foo" id="foo"><p>foo</p><img src="foo" id="foo">');
  44. // -----------------------------------------------
  45. // attributes test2
  46. //$dom = str_get_dom($str);
  47. $dom->load($str);
  48. $dom->remove_callback();
  49. $dom->find('img', 0)->id = "foo";
  50. assert($dom=='<img src="src0" id="foo"><p>foo</p><img src="src2">');
  51. function callback_5($e) {
  52. if ($e->src==='src0')
  53. unset($e->id);
  54. }
  55. $dom->set_callback('callback_5');
  56. assert($dom==$str);
  57. // -----------------------------------------------------------------------------
  58. // tear down
  59. $dom->clear();
  60. unset($dom);
  61. ?>