3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $html = "This is a test"; $search = "is"; $pos = 0; $loop = true; while($loop) { # Check if the word can be found in the text $pos = stripos($return,$needle,$pos); if($pos !== false) { $spanStart = "<span style='background-color:khaki;'>"; $spanEnd = "</span>"; $return = substr($return,0,$pos) . $spanStart . substr($return,$pos,strlen($needle)) . $spanEnd . substr($return,$pos+strlen($needle),strlen($return)); $pos = $pos + strlen($needle) + strlen($spanStart) + strlen($spanEnd); } else { $loop = false; } } echo "html=[$html]";
based on HUXEa
Output for 5.1.5 - 5.6.28, hhvm-3.10.0, 7.0.0 - 7.1.0
Notice: Undefined variable: return in /in/r1AiE on line 11 Notice: Undefined variable: needle in /in/r1AiE on line 11 html=[This is a test]
Output for hhvm-3.12.0
Notice: Undefined variable: return in /in/r1AiE on line -1 Notice: Undefined variable: needle in /in/r1AiE on line -1 html=[This is a test]
Output for 5.0.4 - 5.1.4
Notice: Undefined variable: return in /in/r1AiE on line 11 Notice: Undefined variable: needle in /in/r1AiE on line 11 Warning: stripos(): needle is not a string or an integer. in /in/r1AiE on line 11 html=[This is a test]
Output for 5.0.0 - 5.0.3
Notice: Undefined variable: return in /in/r1AiE on line 11 Notice: Undefined variable: needle in /in/r1AiE on line 11 Warning: stripos(): needle is not a string or an integer. in /in/r1AiE on line 11 html=[This is a test]
Output for 4.4.5 - 4.4.9
Fatal error: Call to undefined function: stripos() in /in/r1AiE on line 11
Process exited with code 255.
Output for 4.3.2 - 4.4.4
Fatal error: Call to undefined function: stripos() in /in/r1AiE on line 11
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Call to undefined function: stripos() in /in/r1AiE on line 11