文字列関数

round関数

round(数値、桁数)
第一引数の数値が基準値となり、第二引数に四捨五入したい桁数を指定できる。

<?php 
 $a = round(123.456,1);
 print ($a);
?>

第2引数の”1”が小数点第1位が繰り上がるので結果は。

出力結果:123.5

第2引数をマイナスや指定しなかったりすると...

<?php
 $a = round(123.456); //指定なし
 print ($a);
出力結果:123  //

$a = round(123.456,-1);//マイナス指定
 print ($a);
出力結果: 120
?>

substr関数

substr(対象の文字列,取り出し開始位置〔0なら先頭〕,取り出す文字のバイト数)

<?php
 $b = substr("DreamWeaver",0,5);
 print($b);
出力結果: Dream
?>

strpos関数

strpos(全体の文字列、その中に含む指定の文字)
文字列の中で指定した文字が何番目にあるかを取得する。
※(ただし、0から数えあげるので"実際の順番-1"の返り値でくる)

<?php
 $c = strpos('abc@defg.com', '@' );
 print($c);
出力結果: 3
?>

mb_strpos関数&mb_substr関数

いままでの半角英数字から文字の順番検索や抽出は引数や返り値はバイト数で表示されましたが
元となる文字列が全角の日本語の場合はバイト数で入力、返り値がかえってくると思ったとおりにならなくなるので"何バイト"ではなく"何文字目"かにするにはmb_strpos関数やmb_substr関数を使う。

<?php
$a = '東京都豊島区池袋';
$b = mb_strpos ( $a, '' );    //'都'が何文字目か?を検出
print mb_substr ( $a, $b + 1 );  //第3引数が無いと、第2引数の値の文字列順番以降が返る。

出力結果:豊島区池袋 
?>