3v4l.org

run code in 300+ PHP versions simultaneously
<?php function strpose($haystack, $needle, $index = 0) { do { $pos = strpos($haystack, $needle, $index); if ($pos !== false) { if (!@trim($haystack[$pos-1])) { if (!@trim($haystack[($pos+strlen($needle))])) { return $pos; } else $index = $pos+1; } else $index = $pos+1; } } while ($pos !== false && $pos < strlen($haystack)); return $pos; } var_dump(strpose("Hello World", "ll")); var_dump(strpose("Hello World", "Hello")); var_dump(strpose("Hello Worlds", "World")); ?>

preferences:
34.71 ms | 402 KiB | 5 Q