PHPでのサーバー開発に関するメモ。
本を見ながらPHPの勉強をしていたのですが、同じようなコードを書く場面が結構あって何度も同じコードを書くのは面倒だなと思ったので、
iOSやAndroidのアプリを開発する時によくやっていた、「実装した機能の共通化」をしてみました。
PHPで実装した機能の共通化
まず、他のページでも共通で使える「common.php」を作成して、「common」フォルダにいれます。
そして、common.phpの中に共通化する機能を実装します。
前に実装したBasic認証の処理を共通化させる場合はこんな感じになります↓
例)Basic認証を行うfunction
common.php
<?php function basicauth(){ //Basic認証 $user = 'uuuu'; $pass = 'pppp'; if(isset($_SERVER['PHP_AUTH_USER']) && ($_SERVER["PHP_AUTH_USER"]==$user && $_SERVER["PHP_AUTH_PW"]==$pass)){ print "{$_SERVER['PHP_AUTH_USER']}"; print'さんログイン中<br/>'; print'<br/>'; } else { header("WWW-Authenticate: Basic realm=\"basic\""); header("HTTP/1.0 401 Unauthorized - basic"); echo "<p>Unauthorized</p>"; exit(); } } ?>
共通化した機能を他のページで使う場合は以下のようにcommon.phpを読み込めば、共通化した機能を利用できます。
<?php require_once('../common/common.php'); basicauth(); ?>
一度機能を共通化してしまえば、同じコードを書かなくて済むこと以外にも、
タイプミスを減らせたり、少ないコードで同じ機能を使いまわせる、接続先の情報や環境設定を一括で変更できるなど、
共通化するメリットは結構あるので、共通化できる機能は積極的に行っていった方が良さそうです。