3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php function getSearchResult($str, $query, $numOfWordToAdd) { $lowered = strtolower($query); $str = str_replace($query,$lowered,$str); list($before, $after) = explode($lowered, $str); $before = rtrim($before); $after = ltrim($after); $beforeArray = array_reverse(explode(" ", $before)); $afterArray = explode(" ", $after); $countBeforeArray = count($beforeArray); $countAfterArray = count($afterArray); $beforeString = ""; if($countBeforeArray < $numOfWordToAdd) { $beforeString = implode(' ', $beforeArray); } else { for($i = 0; $i < $numOfWordToAdd; $i++) { $beforeString = $beforeArray[$i] . ' ' . $beforeString; } } $afterString = ""; if($countAfterArray < $numOfWordToAdd) { $afterString = implode(' ', $afterArray); } else { for($i = 0; $i < $numOfWordToAdd; $i++) { $afterString = $afterString . $afterArray[$i] . ' '; } } $string = $beforeString . ' <span class="underline"> ' . $query . ' </span> ' . ' ' . $afterString; return $string; } $body = "<p>This is the body, KeyWoRd to be searched is here.</p>"; $keyword = "keyword"; echo getSearchResult($body,$keyword,1); ?>
Output for 5.3.0 - 5.6.28, 7.0.0 - 7.1.0
Notice: Undefined offset: 1 in /in/uOICY on line 5 here.</p> <span class="underline"> keyword </span>
Output for hhvm-3.12.0 - 3.13.2
Notice: Undefined index: 1 in /in/uOICY on line 5 Warning: ltrim() expects parameter 1 to be string, null given in /in/uOICY on line 8 Warning: explode() expects parameter 2 to be string, null given in /in/uOICY on line 11 Warning: Invalid operand type was used: implode() expects a container as one of the arguments in /in/uOICY on line 28 here.</p> <span class="underline"> keyword </span>
Output for hhvm-3.10.0
Notice: Undefined index: 1 in /in/uOICY on line 5 here.</p> <span class="underline"> keyword </span>
Output for 4.3.0 - 5.2.17
Notice: Undefined offset: 1 in /in/uOICY on line 5 here.</p> <span class="underline"> keyword </span>