【PHP】個人的によく使うユーザー定義関数3つを紹介【自作関数】
プログラミング中に、似たような処理をまとめて登録したい特に使用する、ユーザー定義関数(自作関数とも呼ばれる)ですが、今回は、自分がサイトを作るときによく使う関数をまとめてみました。
どういったサイトでも使えそうな汎用的なものを中心に載せていきます。
自分がよく使うユーザー定義関数3つ
HTMLコードエスケープ処理
//エスケープ
function h($s){
return htmlspecialchars($s, ENT_QUOTES, 'UTF-8');
}
渡された文字列のHTMLコードとしての役割を消し(エスケープ)、ただの文字列として出力されるコードに置き換える関数です。
主に、悪意のあるコードの埋め込みを防ぐ目的で使用します。
PHPのデフォルトで持っている関数、「htmlspecialchars」とやっていることが同じですが、関数名自体が長く、第三引数まで設定するとさらに長くなるので、上記のような関数を作っています。
ほとんどのPHPプログラマーで使われている有名なユーザー定義関数の一つではないでしょうか。
数値判定処理
//数値チェック
function noCheck($no, $miss = 1){
if(preg_match('/^[1-9][0-9]*$/', $no)){
return (int)$no;
}else{
return $miss;
}
}
渡された値が純粋な数字列かどうかをチェックします。
また、「001」などの先頭にゼロが入った文字のものはエラーとして返します。
第一引数に数値かどうか判定したい文字列、第二引数に数値ではなかった時に返す数値(デフォルトは1)を設定します。
ページング処理の際に使うと便利かもしれません。
メール送信処理
function mailSubmit($to, $from, $title, $body){
mb_language("Japanese");
mb_internal_encoding("UTF-8");
if(mb_send_mail($to, $title, $body, "From: ".$from)){
return true;
} else {
return false;
}
}
メールを簡単に送信できる関数です。
左から送り先のメールアドレス、発信者のメールアドレス、メールタイトル、メール内容の順で引数を設定します。
この関数の返り値に、無事送信できたか失敗したかが true OR falseで返ります。
お手軽にメールフォームなどを設置したい時はこちらをどうぞ。
いかがだったでしょうか。
この記事作るときはいっぱい紹介するぞーと、意気込んで書き始めたのですが、意外と汎用的に使える関数って少ないんだなーって思ったり。
やっぱりそれぞれのサイト毎に処理って変わるんだなって実感しました。(当たり前)
以上、個人的によく使うユーザー定義関数3つを紹介、でした。

ディスカッション
コメント一覧
まだ、コメントがありません