オブジェクト指向な書き方がまだできないので。。。

備忘録として、現段階での最善の書き方を残しておく。


<?//マスターデータ-----------------------------------//
//名前でステータスを管理
$name = $_POST['name']; //送信された名前で判別
$nameArray = array('北海道太郎', 'シティボーイ', '田舎もん', '札幌花子'); /* ★編集箇所★ */
$koumoku = array('職業', 'HP', 'MP', '攻撃力', '守備力'); /* ★編集箇所★ */
switch ($name) {
  case $nameArray[0]:
    $koumokuValue = array('戦士', 50, 0, 45, 20); /* ★編集箇所★ */
    break;
  case $nameArray[1]:
    $koumokuValue = array('勇者', 40, 15, 35, 27); /* ★編集箇所★ */
    break;
  case $nameArray[2]:
    $koumokuValue = array('遊び人', 63, 0, 15, 10); /* ★編集箇所★ */
    break;
  case $nameArray[3]:
    $koumokuValue = array('賢者', 40, 35, 22, 20); /* ★編集箇所★ */
    break;
}
//カウント
$NameCountArray = count($nameArray);
$KoumokuCountArray = count($koumoku);

//var_dump($koumoku); ← array中身チェック
//現在の書き方だと、項目($nenrei、$syussinなど)が増えたときに、人数分追加しなければならない。
//表示部分はarrayにすることで、修正はない。
//マスターデータ-----------------------------------//?>

<!-- 以下、触らない!! -->

<html>
<head>
<title>phpのあれこれ練習</title>
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0">
<style>
body { text-align: center; }
</style>
</head>
<body>
<h1>変数の練習</h1>
<form method="post" action="index.php">
  <input type="text" name="pass">
  <input type="submit" value="送信">
</form>
<?//簡易パスワード
$pass = $_POST['pass'];
if($pass !== 'password'){
  die();
}?>
<form method="post" action="index.php">
  <select name="name">
    <option>
      <? if(!isset($name)) {
          echo '選択して下さい';
        }else{
          echo $name;
        } ?>
      </option>
    <?
    for($i = 0; $i < $NameCountArray; $i++) {
    echo '<option>' . $nameArray[$i] . '</option>';
    }?>
  <input type="hidden" name="pass" value="password">
  <input type="submit" value="表示する">
</form>
<?//簡易パスワード
if(!isset($name)){
  die();
}
//ステータス表示
echo '<p>名前 -> ' . $name . '</p>';
for ($i = 0; $i < $KoumokuCountArray; $i++) {
    echo '<p>' . $koumoku[$i] . ' -> ' . $koumokuValue[$i] . '</p>';
}
?>
</body></html>
オブジェクト指向な書き方がまだできないので。。。
トップへ戻る