『3日でマスターPHP』_伊藤静香 著_ソシム
2015年4月24日 初版第1刷発行
を進めていますが、最初から躓いたので、メモを取りながら進めます。
私の環境
私の環境は次の通り @2015年11月
// PC
Windows 7 Home Premium
Intel(R) Core(TM)2 DuoCPU T7250 @ 2.00GHz
RAM: 2.00 GB
32 bit
//editor
Sublime Text2
//無料サーバ
XAMPP
// Disiplay
iiyama ProLite E22788HD
XAMPP インストール @p19
XAMPP Control Panel の下側に赤色文字でエラーが出ていたので調査。
localhos立上げ時のエラーは管理者として実行すれば直る
恐らく全員躓くエラー。
結論から言うと、管理者として実行すれば消えます。
XAMPP Control Panel
右クリック
\ショートカット
\詳細設定
\管理者として実行 にチェック
\適用
\ok
Service の☓印はクリックしてみる
再度XAMPP Control Panel を立ち上げる
\Service の☓印が気になるのでクリック → チェックマークに変わる
\Apacheの行で Start をクリック
すると次のような画面になる
あとはテキスト通り。
文法メモ @p51~
コメントは3種類 # // /* xx */
コメントがないと困るよね。
私はバッチファイルを作成した時にコメントの大切さを学びました…
使えるコメントは3種類。
# :行頭 / 行の途中で使用可能
// :行頭 / 行の途中で使用可能
/* */ :複数行に跨いで使用可能
数字でも、 ‘ ‘ とか ” ” で囲むと文字列と同じ扱いになる @p53
バッチファイルを作るときにも少し混乱したけど、一先ずメモ。
‘ と ” の違いも解説されている。
バッチファイルでいうところの ^(ハット) を利用したエスケープシーケンスと似てるかな。
”: 完全にテキスト扱い
“”: 後で変数として(又は配列のkey指定時など)展開したい場合に用いる
変数 = … : =(イコール)前後にスペースが入ってもok
毎回バッチと比較して申し訳ないが…
たとえばバッチで変数を宣言するとき、次の書き方で返ってくる値が異なる。
DOSでは=(イコール)の直後にむやみにスペースを入れるとエラーになる。
set HENSU = テストですから (イコールの後ろに半角スペース有)
set HENSU =テストですから (イコールの後ろに半角スペース無)
この点ではPHPの方が可読性が高い気がする。
文字列内で変数を扱う場合は .(ピリオド) で連結しよう
可読性向上のために自分ルール。
コード例は次の通り。
<pre> <?php $temperature = 20.1; echo "今日の気温は ${temperature} です"; //正しく実行される(可読性◎) echo "今日の気温は $temperature です"; //正しく実行される echo "今日の気温は $temperatureです"; //エラー ?> </pre>
実行結果は次の通り。
変数を呼び出す時には、基本的には変数直後に半角スペースが必要。
ただ、波括弧{ } を用いて呼び出すことも出来るらしい。
可読性が高いと感じたので、今後文字列内に変数を入れるときは {} を付けることにする。
*追記:160224
{}は扱い辛い。
半角スペースの有無を目視で追うことに時間を掛けるのがナンセンスだと思う。
だから、最近は .(ピリオド) で連結してブラウザ表示を行っている。
理由は,この表記でも十分可読性が確保されるから。
(c.f.)
<pre> <?php $temperature = 20.1; echo "今日の気温は".$temperature."です"."
"; //正しく実行される( .
で改行) echo '今日の気温は'.$temperature.'です'."
"; //正しく実行される (""->'' の利用) ?> </pre>
submit と button の違い@p105
さらっと button の説明がされているが、実際にサンプルコードで使われているのは submit .
HTMLの話だが違いをまとめてみる。
その前にHTMLの専門用語について
自分も調べながらざっくりまとめる。
要素:見出しや段落などの部品。
たとえばこういうやつ。
<h1> </h1> <h2> </h2> <h3> </h3>
属性:要素に情報を付加するもの。
たとえばこういうやつ。
align="center" BGCOLOR="skyblue"
で、結局どう違うのか
buttonは
<button ○○="~~">これはボタン</button>
←押しても何も起きません
のように使える。
submit はこういう使い方ができない。
input の要素としては submit も button もどちらも設定することが出来る。
submitにすると、自動的に送信機能を持つ。(action指定しないとエラーでるもんね)
buttonにすると、ただ押下できるボタンが表示されて、送信機能は持たない。
“機能”って書いたけど、結局のところ action属性 でファイルを指定するのでとりあえず submit を使っておく。