知って得する標準関数の使い方
DESCRIPTION
第三回 岡山PHP勉強会の資料ですTRANSCRIPT
知って得する標準関数の使い方
What is it?
PHPを使う理由ってなんでしょう?
What is it?
WEBに相性がいいから?
レンサバが標準的に対応してるから?
情報が沢山あるから?
What is it?
最初から武器が揃っている
と言うのは大切なことです
What is it?
なので最初から用意されている
標準関数
を使わないのは勿体無い!!
What is it?
今日は便利な標準関数たちを紹介します
What is it?
大 前 提
紹介する関数は
PHP5.3以上からのもの
も含まれます
できるだけPHPは最新版を使いましょう
あじぇんだ
1 自己紹介
2 配列を制するモノはPHPを制す
3 ファイル操作
4 まとめ
あじぇんだ
1 自己紹介
2 配列を制するモノはPHPを制す
3 ファイル操作
4 まとめ
自己紹介
名前:曽根 壮大(そね たけとも)
年齢:27歳(二十代だよ!)
職業:WEB系プログラマー
技術的にはWEB系でLLとかRDBをゴリゴリしてます。
日本PostgreSQLユーザ会
Twitterは
@soudai1025
と言うアカウントで活動してます。
あじぇんだ
1 自己紹介
2 配列を制するモノはPHPを制す
3 ファイル操作
4 まとめ
配列を制するものはPHPを制す
PHPといえば配列
皆さん、配列使ってますか?
配列を制するものはPHPを制す
まずは配列を扱う際の
便利な関数を紹介します
配列を制するものはPHPを制す
1 配列の作成
2 配列の操作
配列を制するものはPHPを制す
1 配列の作成
2 配列の操作
1 配列の作成
配列を作成する時
$array = array(1,2);
$array[] = 1;
$array[] = 2;
$array = array();
array_push($array, 1, 2);
1 配列の作成
他にも配列を生成する方法があります
1 配列の作成
explode
文字列を文字列により分割する
1 配列の作成
$str = ‘2012-09-25’;
$dete_array = expload(‘-’, $str);
echo $dete_array[0]; //2012
echo $dete_array[1]; //09
echo $dete_array[2]; //25
1 配列の作成
正規表現を使う場合は
preg_split
を使うことで同様のことが出来ます
1 配列の作成
Excel用のCSVの場合は
str_getcsv
を使うことで囲い文字等を指定出来ます
1 配列の作成
$str = '"hoge",1,"2"';;
$csv_array = str_getcsv($str, ‘,’, ‘”’);
//上と等価
$csv_array = str_getcsv($str);
echo $csv_array[0]; //hoge
echo $csv_array[1]; //1
echo $csv_array[2]; //2
1 配列の作成
$data =<<<EOF
“hoge”,1
“fuga”,2
EOF;
1 配列の作成
$lines = explode("¥n", $data);
foreach ($lines as $line) {
$ret[] = str_getcsv($line);
}
print_r($ret);
1 配列の作成
[0] => Array
(
[0] => hoge
[1] => 1
)
[1] => Array
(
[0] => fuga
[1] => 2
)
1 配列の作成
JSON
XML
SERIAL
などをエンコード、デコードして
配列にする関数が多数
配列を制するものはPHPを制す
1 配列の作成
2 配列の操作
2 配列の操作
配列の操作
sort() //並べ変え
array_unique() //値の重複削除
array_merge() //配列の結合
array_shift() //配列の先頭の取出し
array_unshift() //配列の先頭へ追加
array_pop() //配列の末尾の取出し
2 配列の操作
まだまだあります配列操作用の関数
2 配列の操作
array_combine
一方の配列をキーとして
もう一方の配列を値として
ひとつの配列を生成する
2 配列の操作
$a = array('green', 'red', 'yellow');
$b = array('avocado', 'apple', 'banana');
$c = array_combine($a, $b); print_r($c);
2 配列の操作
Array
(
[green] => avocado
[red] => apple
[yellow] => banana
)
2 配列の操作
array_map
指定した配列の要素に
コールバック関数を適用する
2 配列の操作
$func = function($value) {
return $value * 2;
};
print_r(array_map($func, range(1, 5)));
2 配列の操作
Array (
[0] => 2
[1] => 4
[2] => 6
[3] => 8
[4] => 10
)
2 配列の操作
$a = array(1, 2);
$b = array("one", "two");
$c = array("uno", "dos");
$d = array_map(null, $a, $b, $c);
print_r($d);
2 配列の操作
[0] => Array (
[0] => 1
[1] => one
[2] => uno
)
[1] => Array (
[0] => 2
[1] => two
[2] => dos
)
2 配列の操作
困ったらまずリファレンスを読む
あじぇんだ
1 自己紹介
2 配列を制するモノはPHPを制す
3 ファイル操作
4 まとめ
ファイル操作
PHPはファイルの操作に関しても
かなり充実しています
ファイル操作
mkdir
ディレクトリの作成
第三引数を付けると再帰的に作成してくれる
ファイル操作
$path = './now_dir/hoge/fuga/';
mkdir($path, 0777, true);
ファイル操作
file_put_contents
文字列をファイルに書き込む
ファイル操作
$path = './now_dir/hoge.log';
$file_data = ‘hogehoge data’;
file_put_contents($path, $file_data);
ファイル操作
引数を増やすことで追記や排他ロックも可能
file_put_contents($path, $log_data, FILE_APPEND | LOCK_EX);
ファイル操作
file_get_contents
ファイルの内容を全て文字列に読み込む
ファイル操作
//include_pathを指定することも出来る
$file = file_get_contents($path, $include_path);
//URLからも取得できる
$hp = file_get_contents(‘http://hogehoge.com/');
ファイル操作
などなど多くの関数が用意されています
あじぇんだ
1 自己紹介
2 配列を制するモノはPHPを制す
3 ファイル操作
4 まとめ
おまけ
おまけ
ちょっとだけ告知
おまけ
最近 (2012 年 9 月 10 日)
PostgreSQLの最新バージョン
(9.2.0)
が出ました!
おまけ
OSC2012@広島
日時 :2012/10/20 10:00 to 18:00 定員 :部屋による 会場 :広島国際学院大学 検索ワード :OSC 広島
おまけ
オープンセミナー2013@HIROSHIMA
日時 :2013/1/19 10:00 to 17:00 定員 :80 人(ぐらい 会場 :rcc文化センター 6階 601(B1) 検索ワード :OSH広島
まとめ
では本当にまとめ
まとめ
標準関数以外にも更に外部ライブラリの
・pear
・composer
などを使うとより一層便利です
まとめ
更に外部ライブラリの
・pear
・composer
を使うとより一層便利です
まとめ
1 PHPは配列の扱いに長けている
まとめ
1 PHPは配列の扱いに長けている
・色んなシーンに合わせた関数を使い分ける
まとめ
1 PHPは配列の扱いに長けている
・色んなシーンに合わせた関数を使い分ける
2 ファイル操作でFileをOpenしない
まとめ
1 PHPは配列の扱いに長けている
・色んなシーンに合わせた関数を使い分ける
2 ファイル操作でFileをOpenしない
・関数一発で解決!
まとめ
1 PHPは配列の扱いに長けている
・色んなシーンに合わせた関数を使い分ける
2 ファイル操作でFileをOpenしない
・関数一発で解決!
3 兎にも角にもリファレンスに目を通す
まとめ
1 PHPは配列の扱いに長けている
・色んなシーンに合わせた関数を使い分ける
2 ファイル操作でFileをOpenしない
・関数一発で解決!
3 兎にも角にもリファレンスに目を通す
・マジックメソッドやマジック定数もある
まとめ
1 PHPは配列の扱いに長けている
・色んなシーンに合わせた関数を使い分ける
2 ファイル操作でFileをOpenしない
・関数一発で解決!
3 兎にも角にもリファレンスに目を通す
・マジックメソッドやマジック定数もある
・ラムダも使え、オブジェクト指向も出来る
まとめ
1 PHPは配列の扱いに長けている
・色んなシーンに合わせた関数を使い分ける
2 ファイル操作でFileをOpenしない
・関数一発で解決!
3 兎にも角にもリファレンスに目を通す
・マジックメソッドやマジック定数もある
・ラムダも使え、オブジェクト指向も出来る
PHPを知って、より一層「楽をするプログラミング」をしましょう!!
ご清聴ありがとございました。