PHPでよく使いそうな関数を調べてみた

PHP

PHPの勉強をしていているので、調べたものを記しておこうと思います。

今回は(次回があるかはわかりませんが)よく使いそうな関数です。説明はマニュアルを参考にしていますが、詳しくはそのマニュアルページをご覧いただくと正確な情報かと思います。

参考サイト

PHPを記述する

PHPを記述する際にまず使うものです。
ただPHPのみのファイルは余計な空白などが入ってしまう場合があるので、閉じタグはいりません。

<?php /*処理*/ ?>

出力する

文字を表示させたり、変数などに値が入っているか確認する時に使う関数。後ろの説明はPHP マニュアルによる使い方です。

echo "出力"; //1つ以上の文字列を出力する
print "出力"; //文字列を出力する
print_r(); //指定した変数に関する情報を解りやすく出力する
var_dump(); //構造化された情報を返す

単純な文字列を出力するならechoで、配列とかの詳しい情報を見たい時はvar_dumpを使うようです。

変数

よく使うことになろう変数。

$hoge = hoge;

関数

自分で作る定義関数。

function hoge(){
}

if文

条件分岐。JSと一緒ですかね。

if(条件){
}else if(){
}else {
}

変数がセットされているか、そしてNULLでないことを調べる

その変数が何かセットされているかを確認したい時に

isset();

改行文字の前にHTMLの改行タグを挿入

フォームの本文とかに使う感じでしょうか。

nl2br();

特殊文字を HTML エンティティに変換

スクリプト挿入攻撃やXSS対策に使うhtmlspecialcharsですが、毎度使うのには関数が長いので以下のような関数を作成して使うと見た目がすっきりして良いようです。

function h($val){
  return htmlspecialchars($val, ENT_QUOTES,'UTF-8');
}

token生成用ランダム数値

CSRF攻撃対策などに使うtokenでランダムな文字列を生成する。

$token = sha1(uniqid(mt_rand(), true));

フォームとかページ遷移でよく使いそうなの

$_POST[]; //POST送信で来た値を取得
$_GET[]; //GET送信で来た値を取得
$_SESSION[] //SESSIONに格納された値を取得
$_SERVER["REQUEST_METHOD"] //POST GETか判定するときに使う

セッション

session_start(); //セッションを使う時に必須
session_destroy(); //セッションを破棄
session_regenerate_id(); //セッションIDを新しく生成し置き換える(セッションハイジャック対策)

そこで処理終える

エラーが起きたらそこで処理を止めたい時や、

exit;

文字エンコード

メール送信の時に使ったりする。文字化けするときに。

emb_language("ja"); //現在の言語を設定
mb_internal_encoding("utf-8"); //内部文字エンコーディングを設定
mb_convert_encoding($name,"utf-8"); //文字エンコーディング

メールを送信する

$to = 送信先アドレス;
$title = 件名;
$text = 本文;
$from  = "From: ". $to . "\r\n";
$from .= "Return-Path: ". $to;

$success = mb_send_mail($to, $title , $text , $from);

//送信が成功したか失敗したかの判定
if($success){
    echo('送信しました');
}else{
    echo('送信失敗!!');
}

何を作るかによってよく使う関数は変わりそうですが、ひとまずこちらが自分が調べる中でよく出てきて覚えておこうと思った関数になります。