function longestCommonPrefix($sub1, $sub2) {
$min = min(strlen($sub1), strlen($sub2));
for ($i = 0; $i < $min; $i++) {
if ($sub1[$i] != $sub2[$i]) {
return substr($sub1,0,$i - 0);
}
}
return substr($sub1,0,$min - 0);
}
function longestRepeatingSubstring($s) {
$lrs = "";
$size = strlen($s);
for ($i = 0; $i < $size; $i++) {
for ($j = $i + 1; $j < $size; $j++) {
$lcp = longestCommonPrefix(substr($s,$i,$size - $i), substr($s,$j,$size - $j));
if (strlen($lcp) > strlen($lrs)) {
$lrs = $lcp;
}
}
}
return $lrs;
}
$s = "pythonphpjavacdartcppjavacsharp";
echo longestRepeatingSubstring($s);
/*
run:
pjavac
*/