<?php
$a
= 'abceee12345309878';
$b
= 'abceeew2345i09878fsfsfsfabceeewsfsdfsfsabceeew';
$c
=
array
();
$lenht1
=
strlen
(
$a
);
$lenth2
=
strlen
(
$b
);
$startTime
= microtime(true);
for
(
$i
=0;
$i
<
$lenht1
;
$i
++) {
for
(
$j
=0;
$j
<
$lenth2
;
$j
++) {
$n
= (
$i
-1>=0 &&
$j
-1>=0)?
$c
[
$i
-1][
$j
-1]:0;
$n
= (
$a
[
$i
] ==
$b
[
$j
]) ?
$n
+1:0;
$c
[
$i
][
$j
] =
$n
;
}
}
foreach
(
$c
as
$key
=>
$val
) {
$max
= max(
$val
);
foreach
(
$val
as
$key1
=>
$val1
) {
if
(
$val1
==
$max
&&
$max
>0) {
$cdStr
[
$max
] =
substr
(
$b
,
$key1
-
$max
+1,
$max
);
}
}
}
ksort(
$cdStr
);
$endTime
= microtime(true);
echo
"Totle time is "
. (
$endTime
-
$startTime
) .
" s"
.
"<br/>"
;
print_r(
end
(
$cdStr
));
exit
;
?>