※当サイトの記事には、広告・プロモーションが含まれます。

PHPの考え方

DRYとは?

Don't Repeat Yourself ⇒ 特にコンピューティングの領域で、重複を防ぐ考え方である。この哲学は、情報の重複は変更の困難さを増大し透明性を減少させ、不一致を生じる可能性につながるため、重複するべきでないことを強調する。

 

・同じ処理が二度以上出てくる場合は関数にまとめる。

・同じ値が二度以上出てくる場合は変数に代入する。

この二つを徹底することが有能なプログラマーへの道。

 

formタグのinputのname属性を指定することでPHPで値を使えるようにする。

index.php

<form method="post" action="form.php">

<input type="text" name="item">

<input type="submit" value="計算">

</form>

form.php

<?php

  function t$n ){
    echo floor( $n * 1.08 );
  }
  function h$s ){
    return htmlspecialchars( $s );
  }
?>
<!doctype html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>計算結果</title>
</head>
<body>
<h1>計算結果</h1>
商品1:<?php echo h$_POST"item" ] ); ?>の税込価格は<?php t$_POST"item" ] ); ?>円です。<br>
</body>
</html>

セキュリティー上、htmlspecialchars$_POST"item" ]の前につけてあげることで外部からのスクリプトを無効化できる。(<script>alert("test");</script>などをinputタグなどに入力するとスクリプトが実行されてしまうので、htmlspecialcharsで無効化。)

現場などでは関数にしておくことが多い。

<?php

function h$s ){
  return htmlspecialchars( $s );
}

?>

 

formをきっかけに問題は起こる ⇒ formは外部からアクセスできるため。

 

なぜWebを使うか?

距離を短縮できる。

お店に行かなくてもパソコン上でものが買える。

処理をコンピューターがしてくれる。

自動販売機は店員の代わりにジュースを売ってくれる。