Skip to content

Instantly share code, notes, and snippets.

@dorianneto
Created December 7, 2017 14:22
Show Gist options
  • Save dorianneto/a6f27584eafca23a18725973d89c11da to your computer and use it in GitHub Desktop.
Save dorianneto/a6f27584eafca23a18725973d89c11da to your computer and use it in GitHub Desktop.
<?php
function abbreviate_name(string $name): string
{
if (strlen($name) <= 13) {
return $name;
}
// Removendo preposições do nome
$name_arr = explode(' ', preg_replace('/\s(de|da)\s/', ' ', $name));
$count = count($name_arr) - 1;
while (strlen($name) > 13) {
$name_arr[$count] = substr($name_arr[$count], 0, 1) . '.';
$name = implode(' ', $name_arr);
$count--;
}
return $name;
}
var_dump(abbreviate_name("Dorian Sampaio Neto"));
var_dump(abbreviate_name("Yan Rui Fonseca"));
var_dump(abbreviate_name("Cleber Alves"));
var_dump(abbreviate_name("Gabriel de Sousa Castro"));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment