3v4l.org

run code in 300+ PHP versions simultaneously
<?php $dictionary = array("hello", "hi", "how r u", "how are you", "how r you", "how are u"); function isDictionaryWord($str,$dictionary){ foreach($dictionary as $each_word){ if(isSubsequence(strtolower($each_word),strtolower($str))){ return true; } } return false; } function isSubsequence($needle,$haystack){ $len1 = strlen($needle); $len2 = strlen($haystack); if($len1 > $len2) return false; $ptr = 0; for($i=0;$i<$len2 && $ptr < $len1;$i++){ if($haystack[$i] === $needle[$ptr]) $ptr++; } return $ptr == $len1; } $tests = array( 'Hello', 'Helloooo', 'How r youuu !!!!', 'hell', 'w are y' ); foreach($tests as $each_test){ echo $each_test," => ",var_dump(isDictionaryWord($each_test,$dictionary)),PHP_EOL; }
Output for 5.6.38, 7.0.33, 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
Hello => bool(true) Helloooo => bool(true) How r youuu !!!! => bool(true) hell => bool(false) w are y => bool(false)

preferences:
147.26 ms | 408 KiB | 5 Q