Scripts
Prevent long strings
Met deze functie kunnen bij voorbeeld forum posts met woorden waar meer dan een x aantal keer een letter/teken in achter elkaar gebruikt bewerkt worden. Een Haaa…aaaalo wordt dan een Haaalo met juist zoveel “a” teken zoals je wenst (het limit)
prevent-long-strings
<?php
function prevent_long_strings($post, $limit = 3) {
$word_array = explode(" ", $post);
$opti_string = "";
foreach ($word_array as $val) {
if (preg_match("/(.)\\1{".$limit.",}/", $val)) {
$char_array = preg_split("//", $val);
$check = 0;
for ($i = 0; $i < count($char_array); $i++) {
if ($char_array[$i] == $char_array[$i-1]) {
if ($check < $limit - 1) {
$new_word[] = $char_array[$i];
}
$check++;
} else {
$new_word[] = $char_array[$i];
$check = 0;
}
}
$opti_string .= implode("", $new_word)." ";
unset($new_word);
} else {
$opti_string .= $val." ";
}
}
return $opti_string;
}
// Example:
echo prevent_long_strings("Hello, can you heeeeeeeeaaaaaaaar meeeeeeeeeeeee !!!!!!!!!!!!!!!!!!! !!!!!!!!", 3);
// is converted to "Hello, can you heeeaaar meee !!! !!!"
?>
Reacties
0