|
|
PHPでWebアプリケーションを作ろう |
第1回:アプリケーションを作るにはPHPのスクリプトが重要
著者:アシアル 松田 惇 2007/6/1
|
|
|
前のページ 1 2 3 次のページ
|
|
条件分岐<if>
|
プログラムでは実行する処理を条件によって変えたい場面が出てきます。そんなときは「if 〜 else」を使います。
<?php
$a = 300;
$b = 200;
if ($a == $b) {
print "aとbは同じ値です。";
} else if($a < $b) {
print "aはbより小さい値です。";
} else {
print "aはbより大きい値です。";
}
?>
実行結果:aはbより大きい値です。
上のスクリプトでは、$aと$bの大きさを比べています。代入の「=」と違い「==」は値が等しいかどうかを判定します。最初のif文では$aと$bの値が異なり、次のif文では$aが$bより小さくないため、最終的に「aはbより大きい値です。」というメッセージが出力されます。
条件分岐のサンプルサンプルPHPスクリプト
if (条件文) {
// 条件文に一致するときに実行される
} else {
// 条件文に一致しないときに実行される
}
|
繰り返し<for>
|
特定の処理を繰り返して行いたいときはfor文を使用します。
for(初期化; 繰り返し条件; 継続処理) {
// 処理
}
これは最初に$iに0が代入され、$iが10より小さい間だけ繰り返されます。中カッコ内の処理後に継続処理「$i++」が毎回実行されます。ここで$iが1づつ増え、繰り返し条件の「$i < 10」に適合するまでの間、つまり10回だけ処理が実行されます。
ちょっと難い構文ですが、基本的には上のサンプルのような書き方をすることが多いのでこの形のまま覚えてしまいましょう。
繰り返しのサンプルPHPスクリプト
<?php
for ($i = 0; $i < 10; $i++) {
print($i);
}
?>
実行結果:0123456789
|
関数
|
関数とは、「決まった処理をひとまとめにしておき、再利用しやすいように定義したもの」です。関数にはPHPに最初から用意されている組み込み関数と、自分で作成することができるユーザ定義関数があります。
よく使う代表的な組み込み関数には、以下のようなものがあります。
関数名 |
機能 |
date() |
日付の文字列を返してくれる |
print_r() |
配列を読みやすい形に展開して表示してくれる |
str_replace() |
文字列の特定の文字を置き換える |
表3:代表的な組み込み関数と機能
このようにプログラム内で行いたい処理は、すでに関数として定義されていることがほとんどです。自分ですべてを作ろうとせず、すでに用意されているものは利用できるだけ利用しましょう。
行いたい処理が組み込み関数で用意されているかどうかはPHPのオフィシャルサイト(http://www.php.net/)を利用することで調べることができます。使い方は簡単で、「http://www.php.net/関数名」と入力することで、調べたい関数の詳細が調べられます。
また組み込み関数の名前は、その多くが決まった法則にしたがって名付けられています。そのため、もし関数名がわからなくても大体の法則さえわかっていれば、求めている関数があるかどうかを調べることができます。
求めている関数の機能 |
関数名 |
文字列に対して何かを行いたい場合 |
str… |
配列に対して何かを行いたい場合 |
array・・・ |
画像に対して何かを行いたい場合 |
image・・・ |
マルチバイト(日本語の文字列など)を扱いたい場合 |
mb_・・・ |
値がどのようなものかを調べたい場合 |
is_・・・ |
表4:求めている関数の機能と名前の対比
また以下のURLからこの関数マニュアルをヘルプファイルとしてダウンロードすることができます。キーワード検索が使いやすいので、ぜひ使いやすい場所に置いておいてください。
|
ユーザ定義関数の作り方
|
ユーザ定義関数は次の構文をプログラム内に書くことで定義できます。
function 関数名(受け取る値) {
// 処理
return 返す値;
}
下のプログラムはユーザ定義関数「tashizan()」を作成し利用しています。同じような処理を何度も繰り返さなければならない場面では、関数を作成して再利用すると便利です。
ユーザ定義関数のサンプルプログラム
<?php
$a = 100;
$b = 200;
$result = tashizan($a, $b);
print($result);
/**
* 関数tashizanの定義 2つの値を足した数を返す
*/
function tashizan($x, $y) {
$answer = $x + $y;
return $answer;
}
?>
ユーザ定義関数は、すでに定義されている関数名で再定義することはできません。
|
前のページ 1 2 3 次のページ
|
|
|
|
著者プロフィール
アシアル株式会社 松田 惇
アシアル株式会社で新サービスの開発・提供を主に従事。昔はかなりのゲーマーだったが、最近はAjaxを使ったオセロなどの趣味プログラミングを楽しむ。最近は、中心となって開発をしている地図日記にFlickrやYouTubeをマッシュアップするなど、新しいサービスを生み出したいと日々奮闘中。
|
|
|
|