在一个段落中如何使用PHP将单词的每个首字母变成大写字母

时间:2011-02-22 08:49:24

标签: php logic capitalization

我有一个段落,我希望使用PHP将单词的每个首字母大写成大写字母。

前:

converting every first letter into capital letter.

应转换为

Converting Every First Letter Into Capital Letter.

谢谢

4 个答案:

答案 0 :(得分:5)

如果这是严格用于演示,您也可以使用CSS:

  • capitalize:将每个单词中的第一个字符转换为大写;所有其他字符保持不受影响 - 它们不会转换为小写字母,但会显示在文档中。

示例:

p {
    text-transform: capitalize
}

答案 1 :(得分:4)

有一个功能 - ucwords()

echo ucwords("converting every first letter into capital letter.");

答案 2 :(得分:1)

要转换每个首字母大写,请使用以下代码

前)

<?php
$data = "converting every first letter into capital letter.";
echo ucwords($data);
?>

输出: 将每封首字母转换为大写字母。

要转换句子中的首字母大写,请使用以下代码 例)

<?php
$data = "converting every first letter into capital letter.";
echo ucfirst($data);
?>

输出: 将每个首字母转换为大写字母。

要转换所有句子中的首字母大写,请使用以下代码。 例)

<?php
$string = "this is a first message. this is a second message. this is a third message! hope this helps.";

$string = strtolower($string);
echo preg_replace('/(^|[\.!?]"?\s+)([a-z])/e', '"$1" . ucfirst("$2")', $string); 
?>

输出: 这是第一条消息。这是一个seconde消息。这是第三条消息!希望这会有所帮助。

答案 3 :(得分:1)

Nithin Raja,您的榜样很棒! 下面的代码针对> = PHP7进行了调整 谢谢!

$string = "Olá, tudo bem? Esta é a minha segunda frase.\nAqui já estou na terceira. E agora encerrando o texto.";
$capitalize = preg_replace_callback('/(^|[\.!?]"?\s+)([a-z])/', function($parte){return $parte[1] . ucfirst($parte[2]);}, $string);
echo nl2br($capitalize);