Presentation is loading. Please wait.

Presentation is loading. Please wait.

PHP 概要 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)

Similar presentations


Presentation on theme: "PHP 概要 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)"— Presentation transcript:

1 PHP 概要 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)
2007/4/25 平成22年度 情報科学III (理系コア科目・2年生) PHP 概要 担当 岡村耕二 月曜日 2限 本資料の一部は、堀良彰准教授、天野浩文准教授、菅沼明准教授等による以前の講義資料をもとにしています。 情報科学III(3)

2 今回やること プログラミング言語PHPの基礎 PHPが動く仕組み PHPの文法(基礎編)

3 PHPが動く仕組み

4 PHPの特徴 PHP: Hypertext Preprocessor の略
頭文字を取って略称を作るおおもとの名前の中に,その略称自体が含まれている. これ自体が1つのプログラミング言語であるが,HTML言語と組み合わせて,特にwebページの動的な生成に用いられることが多い. HTMLで書かれた普通のwebページの中に,PHPプログラムを埋め込むことができる. 文法のかなりの部分は,以下の言語とよく似ている. C Perl 外部のデータベースにアクセスする関数をたくさん持っている.

5 HTMLファイルへのPHP埋め込みの簡単な例
<head> <meta http-equiv="Content-Type" content="text/html"> <title>test of php</title> </head> <body> <?php print("Hello, World!\n"); ?> </body>  </html>

6 どのようにして処理されるか? (サーバサイドでの処理となっている) ブラウザ ①ページのリクエスト webサーバ ②ページの取り出し
PHP処理用モジュール ②ページの取り出し ③PHP部分の処理 (結果はHTMLに埋め込み) HTML PHP HTML ④HTMLのみとなったページがブラウザに返信される (サーバサイドでの処理となっている)

7 PHP部分が処理されると… <html> <head> ... </head> <body>
print("Hello, World!\n"); ?> </body>  </html> <html> <head> ... </head> <body> Hello, World! </body>  </html> "Hello, World!"と印字して,改行しなさい. (これはブラウザでは正しく表示できない) (これならブラウザで表示できる) 「\n」は,改行文字を表す.

8 サーバ上での約束事 webサーバ上に置くファイルの拡張子 HTMLのみのファイル: .html (または .htm)
PHPを含むファイル: .php

9 HTMLに埋め込むときのルール PHPで書かれた部分を <?php と ?> で囲む.ここで, <?php を 開始タグ
<head> ... </head> <body> <?php print("Hello, World!\n"); ?> </body>  </html> PHPで書かれた部分を <?php  と  ?> で囲む.ここで, <?php  を 開始タグ ?> を 終了タグ と呼ぶ.

10 PHP の文法は下記のサイトにて公開されています。 http://www.php.net/manual/ja/

11 PHPの文法(基礎編) 関数の呼び出し 文と文の区切り PHPからの「脱出」 コメント 変数とデータ型 演算子 制御構文
if,else,elseif,while,for 文など

12 print ( "Hello, World!\n" ) 関数の呼び出し
関数は,( )で囲まれたデータ(引数)を受け取り,何かの処理をして,結果を返す. 「引数」は「ひきすう」と読む. print ( "Hello, World!\n" ) 関数名 引数

13 print("Hello, ") ; print("World!\n"); ... 文と文の区切り
文と文の間は,セミコロン( ; )で区切る. ただし,PHPブロック(<?php と ?>で囲まれたひと連なりの部分)の最後の文の後ろには,セミコロンがなくてもよい. print("Hello, ") ; print("World!\n"); ... <?php print("Hello, ") ; print("World!\n") ?>

14 PHPからの「脱出」 開始タグ <?php と終了タグ ?> をうまく組み合わせて使うと:
1つのHTML文書の中で,「PHPから出たり入ったり」できる. PHPブロックを複数箇所に埋め込むことができる. <html> ... <body> <?php print("Hello, World!\n"); ?> <p>ここは HTML の1行目.</p> <?php print("Hello, World, Again!\n "); ?> <p>ここは HTML の2行目.</p> </body>  </html>

15 コメント CやC++のように,プログラムをわかりやすくするためのコメント(注釈)を書くことができる.
コメントは,人間が読むための記述で,PHPの文としては無視される(何の処理も行われない). <?php print("Hello, World!\n"); // C++スタイルのコメントは // その行の終わりまで有効. /* Cスタイルのコメントは, 複数の行にまたがって書くことができる. */   print("Hello, World, Again!\n"); # シャープ文字で # で始まるコメント # もある. ?>

16 変数 PHPでは,変数名の頭に $ が付く. 例: 「$a」, 「$x」, 「$variable」 大文字と小文字は区別される.
$a と $A,$name と $Name は別の変数になる. 英大文字,英小文字,数字,アンダースコア( _ )が使える. ただし,最初は英字かアンダースコア 数字で始まる変数名は不可 C/C++ のような変数の型宣言が必要ない. 使いたい型のデータをいきなり代入して初期化する. (宣言なしでいきなり代入してもエラーにならない.) 逆に,初期化を忘れていてもエラーにはならないので,気づきにくい.

17 データ型と初期化の例 文字列型 $name = "John"; $message = "Hello, World!\n"
整数型 $count = 1; $age = 43; 論理型 $condition1 = TRUE; $condition2 = False; 値は TRUE と FALSE のいずれか(大文字小文字は区別されない). 浮動小数点型 $pi = ; 代入文は 左辺に右辺を代入する.

18 演算子(1) 代入演算子: = 左辺に右辺を代入する. 例: $a = 0;
比較演算子 右辺と左辺を比較して,その結果を論理型の値(TRUE/FALSE)で返す.  == :左辺と右辺が等しい  != :左辺と右辺が等しくない  < :左辺が右辺より小さい  > :左辺が右辺より大きい  <= :左辺が右辺以下  >= :左辺が右辺以上

19 演算子(2) 連結演算子: . (ピリオド) 左辺の文字列データに右辺の文字列データを連結する. $left . $right 算術演算子
 +  -  *  / 論理演算子  AND OR NOT 2つの論理型のデータに対して適用される. 例: $condition1 AND $condition2 1つの論理型のデータに対して適用される. 例: NOT $condition2

20 if (条件式) { 条件式が成り立つときに実行する文 } 次の文 制御構文(1) if 文
ある条件が成り立っているときだけ実行したいときに使う. 条件が成り立つときは,内側の文を実行して,次の文に進む 成り立たなかったら,そのまま何もせずに次の文に進む. 「条件分岐」ともいう. if (条件式) { 条件式が成り立つときに実行する文 } 次の文

21 if (条件式) { 条件式が成り立つときに実行する文 } else { 条件式が成り立たないときに実行する文 制御構文(2) else 文

22 どちらの条件式も成り立たないときに実行する文
制御構文(3) elseif 文 先行する if 文の条件が成り立たなかったとき,次の条件を検査する. if (条件式1) { 条件式1が成り立つときに実行する文 } elseif (条件式2) { 条件式2が成り立つときに実行する文 else { どちらの条件式も成り立たないときに実行する文

23 制御構文(4) switch 文 if ~ elseif ~ elseif ~…~ else でもいいが,条件式が単一の変数で判定されるときには便利な構文がある. switch (変数) { case "値1" : 変数の値が「値1」のときに実行する文     break; case "値2" : 変数の値が「値2」のときに実行する文   ... default : 変数の値がどれとも一致しなかったときに実行する文 break; } 次の文 コロン(:)であることに注意!

24 while (条件式) { 条件式が成り立つときに実行する文 } 次の文 制御構文(5) while 文
条件が成り立つ間,何度でも繰り返す. 条件式が成り立たなくなったら,次の文に進む. while ループともいう while (条件式) { 条件式が成り立つときに実行する文 } 次の文

25 do { 条件式が成り立つときに実行する文 } while (条件式) 次の文 制御構文(6) do-while 文
最初は1回必ず実行する. それが終わったら条件の検査をする. 条件が成り立たなくなるまで繰り返す. do { 条件式が成り立つときに実行する文 } while (条件式) 次の文

26 制御構文(7) for 文 同じ処理を一定の回数繰り返したいときに用いる. for ループともいう.
「カウンタが100以下の間は…」など 「カウンタを1にセットする」など 「カウンタの値を1増やす」など for (初期化の式; 条件式; 1回終了したときの処理) { 繰り返し実行する文 } 次の文

27 まとめ 関数の呼び出し 文と文の区切り PHPからの「脱出」 コメント 変数とデータ型 演算子 制御構文
if,else,elseif,while,for 文など

28 演習問題 その1 100個の乱数を生成して表示させてみよう 小さい順にソートしてみよう その3 表形式に出力結果を表示してみよう。

29 課題問題 任意の数を100個生成して 表形式で表示しなさい。 乱数を発生させる関数を探す
2007/4/25 課題問題 任意の数を100個生成して 表形式で表示しなさい。 乱数を発生させる関数を探す 1. で、発生させた数字が素数かどうか判定し、素数を青色で表示させなさい。 ある数が素数であるかどうかは、どうやって調べる? 情報科学III(3) 29


Download ppt "PHP 概要 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)"

Similar presentations


Ads by Google