ガードブロッキング的ブログ

PHPのノート14 – 関数2(文字列関数)

PHPのノート14 – 関数2(文字列関数)

文字列関数

文字列のカウントはすべて0からという点に注意

strlen

変数の文字列の長さ(文字数)を取得

$s = 'hello';
 echo strlen($s);

helloの文字数は5

strpos

変数の文字列の第二引数が何番目かを取得

echo strpos($s, 'l');

helloの’l’は3番目なので2

substr

変数の文字列の第二引数から第三引数分の文字列を取得

$d = "abcdefghijk";
echo substr($d, 3,2);

変数$dの文字列”abcdefghijk”で、($d, 3, 2)の場合、
4番目dから二文字分deが結果となる。

この関数は-(マイナス)も指定できる。この場合文字列の後ろからになるが、
起点となる0はaのため-3だった場合はiになる。

str_replace

指定された文字列を置換する。

$e = "this is a pen.";
echo str_replace("pen", "brush", $e);

$eのpenをbrushに置換して表示する。

strlen,strpos,substr,str_replaceを確認
note14_01

printf

フォーマット済みの文字列を出力する

$s = "apple";
printf ("we have 50 %ss", $s);

$s内の文字列を%の後に表示する。
%の後ろのフォーマットは決まっており、文字列だけでなく整数、少数も可能。

文字列はs
整数はd
少数はf

$x = "banana";  //文字列はs
 $n = 40;       //整数はd
 $p = 5.322;    //少数はf、この時fの前に数字を書くと小数点の桁を指定できる。
printf ("we have %d %ss for $%.2f.",$n,$x,$p);

かなり解り辛いが使いこなせると便利?らしい。
現時点ではかなり難解。

確認
note14_02

mb

mb_文字列関数

主に文字列が日本語(全角、マルチバイト文字)の場合mbを付ける。

mb_strlen($s, “UTF-8”);

mb_文字列関数の引数に”UTF-8″を追記することで文字エンコーディングを指定できる。

$j = "こんにちは";
echo mb_strlen($j, "UTF-8");

(strlenは文字列の長さを調べる)

mb_substr($s,n,x)
echo mb_substr($j,1,3,"UTF-8");

(substrは文字列のn番目からx文字分表示する)

確認
note14_03

注意事項

 

モバイルバージョンを終了