PHP实现英文标题正确大写的代码

发布时间:2020-04-03编辑:脚本学堂
分享一例php代码,用于实现英文标题的正确大写,很实用的一段代码,有需要的朋友参考下吧。

本节内容:
英文标题正确大写的php实现代码

一,php实现英文标题正确大写的例子:
 

复制代码 代码示例:

<?
/**
* 标题的正确大写
* by www.jb200.com
*/

//除了,a,an.the,bu,as if,and,or,nor,of,by之外,其它单词首字母全部大写

function title_upcase($str) {
    //将全部单词首字大写

    $str = ucwords($str);
    //返回一个数组,包含字符串里的所有单词,并且以单词在字符串里的位置作为索引

    $wordlist = str_word_count($str,2);
    //排除数组里第一个和最后一个元素,因为不需要改变为小写

    $wordlist = array_slice($wordlist,1,-1,true);
    //如果包含下列单词,则全部小写

    foreach ($wordlist as $position => $word) {
        switch ($word) {
            case 'A':
            case 'An':
            case 'The':
            case 'But':
            case 'As':
            case 'If':
            case 'And':
            case 'Or':
            case 'Nor':
            case 'Of':
            case 'By':
                $lower = strtolower($word);
                $str{$position} = $lower{0};                                
        }
    }
    return $str;
}
?>

二,调用示例
例子:
 

复制代码 代码示例:

<?
$sample = "a study of interesteller galaxies as presented by scientist";
$upcased = title_upcase($sample);
echo $sample; // a study of interesteller galaxies as presented by scientist

echo $upcased; // A Study of Interesteller Galaxies as Presented by Scientist
?>