今や当たり前に使われているinclude。
ヘッダーなどの共通部分を読み込ませるには必要不可欠と言っていい記述ですが一点弱点が。
各ページからの相対パスでincludeフォルダまで読み込ませないといけない。
1 |
<?php include("../common/footer.php"); ?> |
こんな感じで取ってきたらいいのですが…階層が二階層だけでなく三階層、四階層とあるサイトは、いちいち../だったり../../だったりと、階層に応じて書かないといけない。
これって全然効率よくない!ってことで、PHPを使って全部同じ記述にしちゃいましょう。
$_SERVER[‘DOCUMENT_ROOT’];をつかってドキュメントルートを参照
インクルードを使えてる時点でPHPが使えるので、このやり方も使えます。
下記のような記述にすれば、自動的にドキュメントルートからの相対パスを行ってくれるので、ルート相対と同じような感覚で使えます。
1 |
<?php include($_SERVER['DOCUMENT_ROOT'] . '/include/footer.php'); ?> |
これで万一インクルード部分を削除したかったり読み込ませてるファイル名を変えたかったりしたときも一括返還で行けちゃいます。