「PHPのコード、どう書けばいいかわからない…」そんな悩みをお持ちのあなたへ。この逆引きレシピでは、PHPプログラミングでよく使う機能やテクニックを、初心者にもわかりやすく解説します。すぐに使えるコード例も豊富に掲載しているので、効率的に学習を進めたい方におすすめです。
Laravelの逆引きレシピは別の記事にあるので、そちらを参照してください。
基本
PHPのバージョンを調べる
コマンドラインで調べる。
php -v
phpinfo()やphpversion()で調べる。
phpinfo(); // バージョン以外にも色々な設定などが見れます
phpversion(); // バージョンのみ表示します
変数の中身を調べる
print_r(); // 大体はこれで事足りる
var_dump(); // 詳細な情報
コメントアウト
// 1行コメント
/*
複数行コメント
*/
配列
配列に要素追加
// 最後に追加
$array[] = 'VALUE';
// 最後に複数追加
$array = array_push($array, 'VALUE1', 'VALUE2');
// 最初に複数追加
$array = array_unshift($array, 'VALUE3', 'VALUE4');
配列から要素削除
unset()を利用する。
unset($array['TargetKey']);
配列を分解
list()を利用する。
$array = ['foo', 'bar', 'baz'];
list($foo, $bar, $baz) = $array;
[$foo, $bar, $baz] = $array; // PHP7.1以降
配列を変数群にする
compact()の逆バージョン。extract()を利用する。
$array = [
'foo' => 'A',
'bar' => 'B',
'baz' => 'C',
];
extract($array);
配列を結合する
implode()を利用する。配列を結合して文字列にします。
CSVやTSV、SQLの組み立て、ログ出力などで利用することが多いです。
implode(',', ['Hello', 'World']); // "Hello,World"
implode(' OR ', ['column1 = 1', 'column2 <> 9']); // "column1 = 1 OR column2 <> 9"
文字列
前後のスペースや改行などを取り除く
trim($str); // 両端を取り除く
ltrim($str); // 先頭のみ取り除く
rtrim($str); // 末尾のみ取り除く
文字列を分解して配列にする
explode()を利用する。
$string = '東京,千葉,埼玉,群馬,栃木,茨城';
$array = explode($string);
文字列を数値に変換したい
文字列の最後の1文字を取得したい
文字列を逆にしたい
strrev()を利用する。
strrev('ABCDE'); // EDCBA
文字列を区切り文字で分解したい
explode()を利用する。CSVやTSV文字列の分解などに利用できます。
explode(',', 'Foo,Bar,Baz'); // ['Foo', 'Bar', 'Baz]
explode(' OR ', 'column1 = 1 OR column2 <> 9'); // ['column1 = 1', 'column2 <> 9']
変数
変数の型を知りたい
ファイル操作
全文を読み込む
file_get_contents()を利用する。
$content = file_get_contents('/tmp/example.txt');
ファイルから1行ずつ読み込む
$file = fopen('/tmp/sample.txt', 'r');
while ($line = fgets($file)) {
echo $line . PHP_EOL;
}
ファイルへ書き込む
fopen()を利用する。
$fileName = '/tmp/sample.txt';
if ($fh = fopen($fileName, 'rw')) {
fwirte($fp, 'sample text');
}
fclose($fh);
その他
定義済みの定数を知りたい
get_defined_constants()を利用する。
get_defined_constants(); // 配列で取得
get_defined_constants(true); // カテゴリ付きの配列で取得
コメント