「ドットインストール PHP入門」をざっくり一周した
メモ。
他言語と共通している、既に理解している部分は省略
学んだこと
1 PHPを使ってみよう
PHPとは、webアプリケーションを作るためのプログラミング言語
2 はじめてのPHPプログラム
PHPはHTMLに直接埋め込んで書くことができる
<?php ?>
と書くと、phpを埋め込める
文字列出力はecho "hoge"
文の区切りはセミコロン
3 ビルトインWebサーバーを使ってみよう
php -S IPアドレス ポート番号 でビルトインwebサーバーが立ち上がる
エラーが発生した場合、コンソールがエラーを吐いているので確認(ビルトインwebサーバーの場合)
4 変数とデータ型について理解しよう
変数定義 $hoge = "hoge"
使うときもそのままecho $hoge
var_dump()
で型と値を確認できる
5 定数を使ってみよう
定数定義 define(HOGE_FUGA, "abc")
定数名は大文字スネークケースで
変数と違って$をつけない
自動的に定義される定数
__LINE__ // 行数 __FILE__ // ファイル名 __DIR__ // ディレクトリ
6 数値の演算をしてみよう
PHP5.6以降は**
演算子でべき乗
7 文字列を扱ってみよう
""
(ダブルクォート) : 特殊文字(\n, \t) 変数が展開される
''
(シングルクォート): 展開されない
変数展開の際は、{$name}
や${name}
という形で変数であることを明示できる
文字列連結の基本はドット"hello" . "world"
8 if文で条件分岐をしてみよう
- elseifはスペースなし(else ifではない)
===
で型も含めた比較
9 真偽値について理解しよう
falseになる場合
- 文字列: 空、"0"
- 数値: 0, 0.0
- 配列: 要素の数が0
- null
10 switch文で条件分岐をしてみよう
11 while文でループ処理をしてみよう
12 for文でループ処理をしてみよう
13 配列を使ってみよう
# 連想配列 $sales = array( "taguchi" => 200, "fkoji" => 800, "dotinstall" => 600, ) // PHP5.4 $sales = [ "taguchi" => 200, "fkoji" => 800, "dotinstall" => 600, ]; # 配列 $colors = ["red", "yellow", "green"] var_dump($colors[1]); // -> red
14 foreachを使ってみよう
# keyとvalueを取り出す
foreach ($sales as $key => $value) {
echo "($key) $value";
}
# valueだけ
foreach ($colos as $value) {
echo "$value";
}
# endforeachを使う
foreach ($colors as $value) :
echo "$value";
endforeach; //HTMLに埋め込むときにスッキリする書き方
15 関数を使ってみよう
返り値と引数に型宣言が必要ない
16 ローカル変数を理解しよう
17 便利な組み込み関数を使ってみよう
strlen(); // 文字数 mb_strlen(); // マルチバイト文字数 printf() // 指定したフォーマットで表示 count() // 配列の要素の数 implode() // 指定した文字で配列を結合して表示
18 クラスとインスタンスを理解しよう
フィールドへのアクセス
$hoge->name
(変数)、$hoge->fuga()
(メソッド)
19 クラスを作ってみよう
コンストラクタ
__construct()
というメソッドで定義
20 クラスを継承してみよう
21 アクセス権について理解しよう
22 staticキーワードを使ってみよう
staticな変数・メソッドへのアクセス
クラス名::変数・メソッド名
23 抽象クラスを使ってみよう
24 インターフェースを使ってみよう
25 外部ファイルを読み込んでみよう
読み込みの方法
# require → 読み込みに失敗したらエラー require # include → 読み込みに失敗しても処理続行 include # ~_once → そのファイルが読み込まれているかをチェックして、読み込まれていた場合スキップ require_once include_once # autoload → クラスが未定義だった場合に、自動的に読み込む autoload
26 名前空間を使ってみよう
名前空間の接続はバックスラッシュで行う
名前空間に別名をつけることができる
27 例外処理をしてみよう
28 フォームからのデータを処理しよう
# 定義済みの変数 $_SERVER['REQUEST_METHOD'] // リクエストメソッドが何か $_POST['(フォームの属性)'] // フォームからpostされてきた内容が入っている
29 Cookieを使ってみよう
# 定義済みの変数 $_COOKIE['(key)'] // setcookieで設定したvalueを引っ張ってくる
30 セッションを使ってみよう
$_SESSION['(key)'] // sessionに設定したvalueを引っ張ってくる
感じたこと
- 文字列連結がドットなせいで、フィールドへのアクセスが面倒だなと感じた
- 変数にいちいち$をつけるのも若干面倒だなと感じてしまった
- HTMLとの組み合わせで、見た目上スッキリとforeachなどが表現できるのは良い
- 型推論なのはいいけど、関数の返り値と引数に型宣言がないのは少し不安
- 想像していたよりは、自分が身に付けた他言語の知識が使い回せて、そこは安心した