データを保存する場所
プログラミング言語において、「変数」は、データを一時的に保存する場所です。
また、殆どの場合保存する場所は PC のメモリになるのですが、WEB アプリケー
ションという特性上、PHP に限った事ではありませんが、ブラウザが表示している
HTMLの「FORM」内の「INPUT要素の値」も PHP にとっては変数と同じ役目を持って
います。
$_GET は、入力値を保持する「変数」ですが、PHP 側の処理が終了すると消えて
無くなってしまいます。しかし、画面のデフォルト値に埋め込めば、再び PHP が
呼び出された時にその値は保持されているはずです
<INPUT
type="text"
name="InTel"
value="<?= $_GET['InTel'] ?>"
>
<SELECT name="InAddress">
<OPTION value="1" <?= $_GET['InAddress'] == "1" ? "selected" : "" ?>>大阪
<OPTION value="2" <?= $_GET['InAddress'] == "2" ? "selected" : "" ?>>京都
<OPTION value="3" <?= $_GET['InAddress'] == "3" ? "selected" : "" ?>>神戸
</SELECT>
<INPUT
type="radio"
name="InSex"
value="0"
<?= $_GET['InSex'] != "1" ? "checked" : "" ?>
>
<INPUT
type="radio"
name="InSex"
value="1"
<?= $_GET['InSex'] == "1" ? "checked" : "" ?>
>
<INPUT
type="checkbox"
name="InCheck"
value="1"
<?= $_GET['InCheck'] == "1" ? "checked" : "" ?>
>
変数である事の主張
PHP では、変数は必ず $ からはじまるようになっています。これは、"" の
中で変数が記述された場合に、中身で置き換える事ができるようにする為です。
但し、この場合、変数の終わりの位置を決める必要がありますが、何もしなくても
「あきらかに」変数の終わりが解る場合は PHP が判断してくれます。ですが、
もし、PHP が判断できないような文字列があった場合は、以下のように {} で
挟むように決められています。
$x = "/";
$a = "abcd{$x}efgh";
変数の3つの形
プログラミング言語では、変数には「型」という種類が必ず存在しますが、
込み入ったものでも無い限り、PHP で最も意識する「型」は「文字列」と
言う型です。
文字列はたいていにおいて、「見たまま」の内容で、入力された値を最も
意識する必要があるのが WEB アプリケーションでもあります。そんな中、
変数の「ありかた」と言うものを3種類意識して処理を書く事が殆どとな
ります。
1) 単独
$a というように、変数名一つに対して、値が一つ存在するものです。
2) 単純配列
$a[0]、$a[1]、$a[2] ... と言うように、変数名一つに対して、複数
値が存在しますが、複数の値を管理するのに「整数」を使うものです。
3) 連想配列
$a["住所"]、$a["電話番号"]、$a["氏名"] ... と言うように、変数名
一つに対して複数の値が存在し、複数の値を管理するのに「文字列」を
使います
結果的には、「連想配列」が他の「ありかた」を全て含むので、配列の
内容を一括で取り出すような場合は、以下のような方法を取ることにな
ります。
$a = array();
$a[] = "123";
$a[] = "456";
$a["山"] = "富士山";
$a[] = "789";
$a["湖"] = "琵琶湖";
foreach( $a as $Key => $Value ) {
print "$Key : {$a[$Key]}<br />";
}
関連する記事
変数は乗り物で、function は部屋です。
PHPの「連想配列」: associative array