Successfully reported this slideshow.

More Related Content

More from Shuhei Iitsuka

Related Audiobooks

Free with a 14 day trial from Scribd

See all

PHP 入門

  1. 1. PHP 入門
  2. 2. PHP って何? ● プログラミング言語 ● 最初から色々関数が入っててとっつきやすい ● プログラミング言語の設計として、汚い部分も ある ● 逆に、 PHP の汚さが分かるところまで、プロ グラミングを学ぶと良いと思います
  3. 3. プログラミングを学ぶということ ● プログラミングは書けるようになるまで、他の プログラミング言語に浮気しないことが重要 ● 一個出来るようになれば、次の言語はすぐ出来るよ うになる ● 二個出来るようになれば、だいたいどんな言語もす ぐ出来るようになる ● ひたすらたくさんのコードを書きまくることも 重要 ● プログラミングが書けるようになるとはどうい ことか? ● 「式」と「文」の理解 (基礎力) ● 思い通りの「処理」と「値」を定義できて、それら の「整理と名前付け」が出来る (応用力)
  4. 4. ロードマップ https://cacoo.com/diagrams/KEzduTiEHpW5dTYB
  5. 5. プログラミングを学ぶということ ● 重要なのでもう一度まとめます ● 過程 – 書けるようになるまで浮気しない – ひたすら書く – 辛くなったら、ロードマップを思い出す ● ゴール – 式と文の理解 – 値の定義の上達 – 処理の定義の上達 – 値、処理の命名と整理能力
  6. 6. Hello world! <? echo "Hello world!n"; ● PHP の実行の仕方を覚える
  7. 7. 値 <? echo "hoge hogen"; echo 1; echo true; echo null; ● echo の横に値を書くと echo によってその値 が出力されることを理解する ● echo を使った出力だと分かりにくいので次の ページへ
  8. 8. 値 <? var_dump("hoge hogen"); var_dump(1); var_dump(true); var_dump(null); ● echo の出力は null と false と “” の区別が出 来なかったりする ● var_dump を使うと値の詳細を出力することが 出来る ● 文字列、数値、真偽値、 null をマスターしよ う
  9. 9. 演算子 <? var_dump(1 + 1); # +演算子 var_dump(1 . '2'); # .演算子 var_dump(true and false); # and演算子 ● 演算子は、両辺に値を取って別の値を生成する ● + - / * % and or は良く使うので覚える ● ポイント ● 「1」も値だけど「1 + 1」も「2」という値を生成 する ● 値の生成は実行時に演算子が「評価」されることで 行われる ● var_dump はそこにある値を出力するだけ
  10. 10. 演算子 <? var_dump(1 + 1 * 3); ● 演算子には、優先順位があって、実行時に優先 順位が高いほうから評価されて値が生成される ● 1 * 3 が評価されて 3 が生成され ● 1 + 3 が評価されて 4 が生成される ● () を使うと、優先順位の影響を受けない
  11. 11. 変数 <? $hoge = "Hello world!n"; var_dump($hoge); ● 変数は代入 (=) によって値を記憶し、実行時に 「評価」されたときに記憶した値を生成する
  12. 12. 変数 & 演算子 <? $hoge = 1 * 2; $fuga = 3 + $hoge; var_dump($fuga); ● 1 * 2 の結果が評価され、 $hoge に記憶され ● $hoge が評価され 2 を生成する ● 3 + 2 が評価され 5 を生成する ● 5 が $fuga に記憶され ● $fuga が評価され 5 を生成する ● var_dump が 5 を出力する
  13. 13. 関数 <? function fn($a, $b) { # 処理の保存 $c = $a + $b; return $c * 4; } var_dump(fn(1, 2)); # 関数の評価 var_dump(fn(3, 4)); ● 関数は処理を保存し、 return 文で値を「返 す」 ● 関数は () に値のリストを記述することで評価 することができる ● 関数は評価されると return 文で返された値を 生成する
  14. 14. 演算子 & 関数 <? function add($a, $b) { return $a + $b; } function mul($a, $b) { return $a * $b; } var_dump((1 + 1) * 3 * 4); var_dump(mul(mul(add(1, 1), 3), 4)); ● 演算子も関数も「値を使って、評価されると値 を生成する」という意味で本質的には文法は違 うが同じようなものである
  15. 15. 組み込み関数 <? var_dump(file_get_contents('http://www.google.com/')); ● 基本的にプログラミング言語は、値を使って演 算子や関数を評価して値を生成するという機能 しかない ● それ以外の機能は、組み込み関数という形で提 供される ● var_dump や file_get_contents が組み込み 関数
  16. 16. 式 <? var_dump('hoge'); # リテラル式 var_dump(1 + 1); # 二項式 var_dump(add(1, 1)); # 関数呼び出し式 ● 式とは ● 評価され値を生成するプログラム上の単位 ● 値を使う場所には、常に式を置くことが可能 (重要!!)
  17. 17. 条件分岐 <? if (1 + 1) { var_dump('ok'); } else { var_dump('ng'); } ● if 文を使うと、式が生成する値を使って実行す る処理を切り替えることが出来る ● 式の値が '' や 0 や null や false 以外の場合は else よりの前の処理を実行する ● switch 文もある
  18. 18. 繰り返し <? $hoge = 10; while ($hoge) { $hoge = $hoge - 1; var_dump($hoge); } ● while 文を使うと、 if 文と同様に式を評価して 式の値が '' や 0 や null や false になるまで処 理を繰り返し実行してくれる
  19. 19. データ構造 <? $arr = arary(1, 2, array(3, 3, 1 + 1 * 1)); var_dump($arr[2][2]); ● 配列や連想配列を使うと、複数の値を階層的に 持った値を作ることができる ● 配列も値であり、 array() も値であり配列リテ ラルという式である
  20. 20. オブジェクト <? class Hoge { var $a; var $b; function __construct($a, $b) { $this->$a = $a; $this->$b = $b; } function calc() { return $a + $b; } } $hoge = new Hoge(1, 3); var_dump($hoge->calc()); ● あるデータ構造だけに対して評価できる関数を 作るための仕組みがオブジェクトである ● オブジェクトも値である, new も式である

×