3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php function getSimilarSubstring($a, $b) { if(!strlen($a) || !strlen($b)) { return ''; } if(false!==strpos($a, $b)) { return $b; } $length = strlen($b); for($i=$length-1; $i>0; $i--) { for($j=0; $j<$length-$i+1; $j++) { echo('Current is: '.substr($b, $j, $i).PHP_EOL); if($result = getSimilarSubstring($a, substr($b, $j, $i))) { return $result; } } } return ''; } $word_a = "superman"; $word_b = "stermastein"; //$word_a = 'afk'; //$word_b = 'fk'; var_dump(getSimilarSubstring($word_a, $word_b));
Output for 4.3.10 - 4.4.9, 5.0.2 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
Current is: stermastei Current is: stermaste Current is: stermast Current is: stermas Current is: sterma Current is: sterm Current is: ster Current is: ste Current is: st Current is: s string(1) "s"
Output for 4.3.0 - 4.3.9, 5.0.0 - 5.0.1
Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: stermasteiPHP_EOL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: stermastePHP_EOL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: stermastPHP_EOL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: stermasPHP_EOL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: stermaPHP_EOL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: stermPHP_EOL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: sterPHP_EOL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: stePHP_EOL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: stPHP_EOL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/7upCp on line 17 Current is: sPHP_EOLstring(1) "s"