3v4l.org

run code in 300+ PHP versions simultaneously
<?php function applyHLToSiblings(DOMDocument $D){ $words[0] = "cart"; /* $words[1] = "car"; $words[2] = "cartel"; $words[3] = "art"; $words[4] = "drug"; $words[5] = "drugs"; $words[6] = "rug"; $words[7] = "rugs"; */ $ps = function($siblingsContainer, $searchString, $name) use($D){ foreach($siblingsContainer->getChildNodes() as $node){ if($node instanceof DOMText){ if(mb_strlen($node->textContent, "UTF-8") >= mb_strlen($searchString)){ $o = mb_strpos($node->textContent, $searchString); if($o !== false){ $before = mb_substr($node->textContent, 0, $o); $wrap = mb_substr($node->textContent, $o, mb_strlen($searchString, "UTF-8")); $after = mb_substr($node->textContent, $o); print_r($before); print_r($wrap); print_r($after); } } } } }; foreach($words as $name => $word) $ps($D->documentNode, $word, $name); } $x = new DOMDocument(); $x->loadXML("<data>drugs cartel</data>"); applyHLToSiblings($x);
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
Warning: Undefined property: DOMDocument::$documentNode in /in/XcBEP on line 36 Fatal error: Uncaught Error: Call to a member function getChildNodes() on null in /in/XcBEP:17 Stack trace: #0 /in/XcBEP(36): {closure}(NULL, 'cart', 0) #1 /in/XcBEP(44): applyHLToSiblings(Object(DOMDocument)) #2 {main} thrown in /in/XcBEP on line 17
Process exited with code 255.
Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.31, 7.4.0 - 7.4.33
Notice: Undefined property: DOMDocument::$documentNode in /in/XcBEP on line 36 Fatal error: Uncaught Error: Call to a member function getChildNodes() on null in /in/XcBEP:17 Stack trace: #0 /in/XcBEP(36): {closure}(NULL, 'cart', 0) #1 /in/XcBEP(44): applyHLToSiblings(Object(DOMDocument)) #2 {main} thrown in /in/XcBEP on line 17
Process exited with code 255.
Output for 7.3.32 - 7.3.33
Fatal error: Uncaught Error: Call to a member function getChildNodes() on null in /in/XcBEP:17 Stack trace: #0 /in/XcBEP(36): {closure}(NULL, 'cart', 0) #1 /in/XcBEP(44): applyHLToSiblings(Object(DOMDocument)) #2 {main} thrown in /in/XcBEP on line 17
Process exited with code 255.
Output for 5.6.8 - 5.6.28
Notice: Undefined property: DOMDocument::$documentNode in /in/XcBEP on line 36 Fatal error: Call to a member function getChildNodes() on null in /in/XcBEP on line 17
Process exited with code 255.
Output for 5.5.24 - 5.5.35
Notice: Undefined property: DOMDocument::$documentNode in /in/XcBEP on line 36 Fatal error: Call to a member function getChildNodes() on a non-object in /in/XcBEP on line 17
Process exited with code 255.

preferences:
159.07 ms | 402 KiB | 197 Q