2015/4/1 久米
PHPはサーバサイドスクリプト言語です。
JavaScriptやActionScriptではできなかった種々のアプリケーションを作れます。
JavaScript | ActionScript | PHP | |
ベースの標準 | ECMA SCRIPT | ECMA SCRIPT | |
実行場所 | クライアントPC | クライアントPC | サーバ |
記述場所 | htmlファイル。 htmlの中に下記のタグで括る。 <script type="text/javascript"> </script> |
flaファイル。→swfファイル。 | phpファイル。 htmlの中に下記のタグで括る。 <?php ?> |
記述ツール | テキストエディタツール | Flashツール | テキストエディタツール |
コメント行 | //コメント /*コメント*/ |
同左 | 同左 |
命令の尻尾 | 命令; | 同左 | 同左 |
変数種類 | var (宣言する場所でローカル、グローバル。 でもほとんどローカル変数でいける) |
同左 | 同左(ただしvar不要) |
変数命名 | 大文字小文字は区別する。 abcとABCとaBcは別のもの。 アルファベット、数字、_ で名前付ける。 先頭の文字は、アルファベットか _ 。 予約語は使えない。 |
同左 | 変数の先頭に$マークをつける。 大文字小文字は区別する。 abcとABCとaBcは別のもの。 アルファベット、数字、_ で名前付ける。 先頭の文字は、アルファベットか _ 。 予約語は使えない。 |
配列 | x=new Array(5); x[0]〜x[4] |
x=new Array(); x[0]〜 自動的に増えるので5とかいらない |
$x[0]=10;など 配列宣言は不要。 |
データ型 | 数値:1 10 0.123 1e3 012 0x12 文字列: "おはよう。" 'こんばんは。' 論理値: true false |
同左 | 型を意識する必要がない。 |
演算子 | + - * / ・・・ 文字列の結合は+ (プラス) |
同左 | 同左 ただし文字列の結合は . (ピリオド) |
条件分岐文 | if for while | 同左 | 同左 |
関数 | function 関数名(引数){ } | 同左 | 同左 |
オブジェクト命名法 | DOM | ターゲットパス | $オブジェクト名->変数名 $オブジェクト名->関数名() |
イベント記述法 | タグに記述 onClick="" | addEventListenerメソッドで記述 | 特になし |
注)これから作るphpファイルは、
C:\xampp\htdocs\web2 の中にフォルダに
入れてゆくことになる。そのフォルダ名やファイル名は、半角英数にすること。
ファイル拡張子をphpとして保存する。これによって、
サーバ側でphpファイルとして処理され、最終的にHTMLコードが出力される。
htmlの中に下記のタグで括る | 説明 | 推奨 | |
1 | <?php ?> |
○ | |
<?php |
phpだけ記述している場合のみの限定で 閉じるための?>は省略可。 省略することで?>のうしろの改行挿入など バグ要因が減る。 |
◎ | |
2 | <? ?> |
||
2' | <?=表示する文字列?> | <? print 表示する文字列; ?> の短縮形。 |
|
3 | <script language="php"> </script> |
||
4 | <% %> |
1. |
|
|
2. |
|
|
3. |
|
|
4. 推 奨 |
|
phpの処理部分は <html>タグの上に記述し 表示処理print文などは bodyの中に記述 こうすると処理と表示を 分割でき 分かりやすい。 |
※print文とecho文は同じ機能です。どちらかひとつだけ覚えておけばOKです。
1 | 変数 | <?php $a=1+2; ?> bodyの中で <?php print $a; ?> |
2 | 文字列 | <?php $a=1+2; $b="変数aの値は"; ?> bodyの中で <?php print $b; print "<br />"; print $a; |
文字列結合 | <?php $a=1+2; $b="変数aの値は"; ?> |
|
文字列内の"" | <?php $a=1+2; $b="変数aの値は"; ?> |
|
文字列内の改行 (HTMLソース表示の改行) |
<?php $a=1+2; $b="変数aの値は"; ?> |
|
3 | 条件分岐(1) if文 |
<?php $a=1+2; $b="変数aの値は"; $c=""; if ($a>0) { $c="プラスです"; } ?> |
条件分岐(2) if else |
<?php $a=1+2; $b="変数aの値は"; $c=""; if ($a>0) { $c="プラスです"; }else { $c="プラスじゃない"; } ?> |
|
条件分岐(3) if elseif else |
<?php $a=1+2; $b="変数aの値は"; $c=""; if ($a>0) { $c="プラスです"; }elseif ($a<0) { $c="マイナスです"; }else { $c="ゼロです"; } ?> |
|
命令文 が1個の場合は |
<?php $a=1; $b="変数aの値は"; $c=""; if ($a>0) $c="プラスです"; else $c="プラスじゃない"; ?> |
|
3 | 複数条件分岐
|
<?php $a=1; $b="変数aの値は<br />"; $c=""; switch($a){ case 1: $c="1です。"; break; case 2: $c="2です。"; break; default: $c="?です。"; break; } ?> |
4 | ループ for文 |
<?php $c=""; for($x=0; $x<10; $x++){ $c=$c.$x."<br />"; } ?> |
5 | ループ
|
<?php $a=0; $c=""; while($a<10){ $c=$c.$a."<br />"; $a++; } ?> |
などと表示せよ。
余裕のある人は、数値0〜9の乱数を発生させて変数$xに入れよ。
商品 | 価格 | |
1 | かぼちゃ | 320 |
2 | だいこん | 200 |
3 | キャベツ | 480 |
今日やった成果を、自分のホームページにリンクしておくと、整理ができてよい。
習うより慣れろで、下記を参考に、アクセスカウンタを作ってみよう。
<?php //簡単アクセスカウンタ $fp = fopen("counter.txt","r+");//ファイルを開く。読み書きモード $ct = fgets($fp, 64); //ファイルの中身を取得。64バイトまで $ct++; //ファイルの中身(カウンタ)を1増加。 rewind($fp); //ファイルポインタを先頭にもどす。 flock($fp, LOCK_EX); //同時に他人から書き込まれないようにファイルをロックする。 fputs($fp, $ct); //ファイルに書き込む。 fclose($fp); //ファイルを閉じる。 ?> <html> <head> <meta httpequiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>わたしのホームページ</title> </head> <body> <h1>わたしのホームページ</h1> <h2>今日の出来事</h2> <p>今日のPHPは良く分かった。(●^o^●)<br /> こんどの休みに勉強してみようっと。φ(。。;)m</p> <p> </p> <p><b><?php print $ct; ?></b>人目の訪問者です。</p> </body> </html> |
は次のどちらかで調べてみる。関数は、次の時間にやるのでそれまではこれで調べる。