我很关心大写(可能太多)。所以我写了一个函数,可以在我的网站上无处不在修复大写字母。我基本上想要“标题案例”,但有一些例外......我不喜欢看到大写和首字母缩略词。PHP - 这是进行这些更改的有效方法吗?
function my_capitals($string)
{
$uc = ucwords($string);
$tokens = explode(' ',$uc);
foreach ($tokens as $key=>$val)
{
if ($val == 'Ipa') $tokens[$key] = 'IPA';
else if ($val == 'Ipas') $tokens[$key] = 'IPAs';
else if ($val == 'Apa') $tokens[$key] = 'APA';
else if ($val == 'Apas') $tokens[$key] = 'APAs';
else if ($val == 'A') $tokens[$key] = 'a';
else if ($val == 'And') $tokens[$key] = 'and';
else if ($val == 'The') $tokens[$key] = 'the';
else if ($val == 'In') $tokens[$key] = 'in';
else if ($val == 'Or') $tokens[$key] = 'or';
else if ($val == 'Of') $tokens[$key] = 'of';
else if ($val == 'To') $tokens[$key] = 'to';
else if ($val == 'On') $tokens[$key] = 'on';
else if ($val == 'At') $tokens[$key] = 'at';
else $tokens[$key] = $val;
}
$final = implode(' ',$tokens);
return $final;
}
试想有可能是10-15选项,它可以在相对较短的字符串(单行描述和标题)运行每页3-5次。
我的问题是这样的:这是一种有效的方法来完成这种翻译?或者我应该想出一个更有效的方法来做到这一点?是否有另一种我不知道的选择,而不是仅仅是可能具有相似性能的开关?
的可能重复[这是如果更快,更好,开关箱或其他若?(https://stackoverflow.com/questions/10773047/which-is-faster-and-better-switch-case -or-if-else-if) – Haroon
新的线路资本如何?你还想要那些小型的? – deg
@deg,我没有考虑过新的线路首都......我不确定这些是否没有被我目前的情况所困扰。 – JessycaFrederick