2015-04-21 24 views
1

的第一個字母我有一個像讓大寫的名字

$fullname = "dwayne-johnson"; 

可變我怎樣才能讓字德韋恩和字約翰遜的「J」的第一個字母「d」?像我想使大寫由破折號分開的每一個字的第一個字母,例如我具有以下變量(下面參考)

$fullname1 = "dwayne-johnson" //expected result is, Dwayne Johnson 
$fullname2 = "maria-osana-makarte" //expected result is, Maria Osana Makarte 

,你可以從可變fullname1有2個字由分離上述見破折號,所以兩個詞的第一個字母都是大寫的。第二個變量$ fullname2有3個用破折號隔開的單詞,因此該變量中每個單詞的首字母都被大寫。那麼,如何使每個單詞的首字母變成大寫?任何線索,想法,建議,幫助和建議非常感謝。謝謝。

PS:我已經有一個函數可以將破折​​號轉換爲空格,所以我現在要做的就是在變量中用破折號隔開的每一個單詞的第一個字母以及它被大寫後的每一個單詞的第一個字母。然後在其上注入破折號空間函數。

回答

0
<?php $text = str_replace("-", " ", $fullname1); 
echo ucwords($text);?> 
0

可以使用ucword function

下面是一個例子:

<!DOCTYPE html> 
<html> 
<body> 

<?php 
echo ucwords("hello world"); 
?> 

</body> 
</html> 
2

嘗試用 -

$fullname1 = ucwords(str_replace('-', ' ', $fullname1)); 
0

您可以使用下面的代碼

$fullname = "dwayne-johnson"; 
// replace dash by space 
$nospaces = str_replace("-", " ", $fullname); 
// use ucword to capitalize the first letter of each word, 
// making sure that the input string is fully lowercase 
$name = ucword(strtolower($nospaces)); 
0
<?php 
$fullname = "dwayne-johnson"; 
$fullname_without_dash = str_replace("-"," ",$fullname); // gives -> "dwayne johnson" 
$fullname_ucword = ucwords($fullname_without_dash); //gives -> "Dwayne Johnson" 
echo $fullname_ucword; 
?>