4

文の最初の単語を大文字に変換しようとしていますが、どうすればよいかわかりません。これは私がこれまでに持っているものです:

$o = "";

  if((preg_match("/ibm/i", $m)) || (preg_match("/hpspecial/i", $m))) {

$o = strtoupper($m);

} else {

  $o = ucwords(strtolower($m));

}

uppercase文の最初の部分が大文字の HPのIDから使用したいhpspecialのですが、これでは文全体が大文字になってしまいます。文章のHPだけを大文字にするにはどうすればいいですか?

4

4 に答える 4

6

あなたは彼を点在させることができますucfirst

ucfirst— 文字列の最初の文字を大文字にする

お気に入り

$foo = 'hello form world';
$foo = ucfirst($foo); 

ライブ出力

編集:最初の単語を大文字にするには、次のようにできます

<?php
$foo = 'hello form world ';

$pieces = explode(" ", $foo);
$pieces[0] = strtoupper($pieces[0]);
$imp = implode(" ", $pieces);
echo $imp;

ライブ結果

于 2013-04-12T09:38:01.677 に答える
1

このようなものはどうですか:

$arr = explode(' ');
$arr[0] = strtoupper($arr[0]);

echo implode(' ' , $arr);

関数が組み込まれているかどうかはわかりませんが、これでうまくいくと思いますか?

于 2013-04-12T09:56:23.867 に答える
-1

次のようなカスタム関数を使用できます

function uc_first_word ($string)
{
   $s = explode(' ', $string);   
   $s[0] = strtoupper($s[0]);   
   $s = implode(' ', $s);
   return $s;
}

$string = 'こんにちは世界。これはテストです。'; echo $s = uc_first_word ($string)

出力は次のようになります

HELLO world. This is a test

したがって、スペースの前の最初の単語は、文全体の上位になります。

于 2013-04-12T09:56:02.670 に答える