@ PHP

form:関数を使って処理する

別々の関数に表示コードと処理コードを入れることで、フォームの機能に柔軟性を持たせ、コードを少し簡潔にすることができます。

サンプルでは、process_form() にはフォームがサブミットされたときの処理コードを、show_form() にはフォームの表示コードを入れます。array_key_exists() 関数で $_POST に my_name が存在するかどうか調べて処理を分岐します。

form_03.php

<?php
if (array_key_exists('my_name',$_POST)) {
    process_form();
} else {
    show_form();
}

function process_form() {
    print "Hello,".$_POST['my_name'];
}

function show_form() {
    print<<<_HTML_
<form method="post" action="">
  <p>お名前:<input type="text" name="my_name"></p>
  <p><input type="submit" value="送信する"></p>
</form>
_HTML_;
}