PHPで色々な所で使える便利な関数25選

25 Essential PHP Functions - Wikiversity」と言う面白い記事を見つけたので、これを元にPHPで使える便利な関数を紹介していく。

ceil round floor

これら3つの関数は、小数点を丸める働きがあるもの。

roundは小数点を四捨五入し、ceilは小数点を繰り上げ、floorは小数点を切り捨てる働きをする。

例えば、roundだと以下のように使う。

<?php

$var = 4.65;

$res = round($var);

var_dump($res, $var);

結果は、以下の通り。元の変数に変化はなく、結果を戻り値として返すようになっている。(戻り値はint型ではなく、float型として返される)

float(5)
float(4.65)

また、roundは第2引数に数字を入れることで、小数第何桁を四捨五入するかを決めれる。例えば、上記の例だと$res = round($var, 1);とすれば、小数第2桁から四捨五入されて、4.7と言う結果が返される。

ちなみに、ceilは天井、floorは床の意味。

参考:PHP: round - Manual

参考:PHP: ceil - Manual

参考:PHP: floor - Manual

count

主に配列の要素数を数えるのに使う関数。

<?php

$var = ['name' => 'taor'];

$res = count($var);

var_dump($res);

結果は、1が返される。

file_get_contents

fileの内容を文字列に格納する関数。

普通ファイルを操作するためにはfoepnでファイルを開いて、、みたいなことをやる必要があるが、file_get_contentsはファイルを開いて取得する動作をやってくれる。

参考:PHP: file_get_contents - Manual

ini_set

PHP側が用意している設定オプションをいじれる関数。

良くあるのが、以下のようにしてエラーを画面に表示させないようにするものだろう。

<?php

ini_set( 'display_errors', '1' ) 

参考:PHP: ini_set - Manual

設定できるオプションの種類に関しては、「PHP: php.ini ディレクティブのリスト - Manual」が詳しい。

header

生のheader情報を送信できる関数。生のheaderとは、header('Location: http://www.example.com/');のように自分でheader情報をいじれることを言う。

ただ、header関数を使うには制約があり、header関数の前に出力してはいけない、と言うことだ。これには、requireなどのファイル読み込み、空白、HTMLなども含まれる。

参考:PHP: header - Manual

str_replace

第3引数に置換したい文字列を入れて、第1引数を第2引数の文字に変換する関数。

説明するよりも、以下の例を見た方が分かりやすい。以下の例では、$varの文字列の半角スペースをAに置き換える。

<?php

$var = "I am tarou";

$res = str_replace(" ", "A", $var);

var_dump($res);
string(10) "IAamAtarou"

なお、このstr_replaceでは正規表現によるマッチングは使えないので、もし正規表現を使いたい場合はpreg_replaceを使うべき。

参考:PHP: preg_replace - Manual

参考:PHP: str_replace - Manual

trim

文字列の先頭、末尾からwhitespaceを取り除く関数。whitespaceとは、半角スペース、タブ、改行などの文字をいう。

第2引数に文字列を指定することで、whitespaceではない文字を取り除くことができる。例えば、trim($var, '/')とした場合は、$varの先頭、末尾にある/を取り除いてくれる。

また、先頭だけ取り除きたい場合はltrim、末尾だけの場合はrtrimが良く、先頭や末尾ではなく文字の真ん中を取り除きたい場合は、先ほどのstr_replaceが良い。

PHP: trim - Manual