人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPでrequire(include)する場合についての質問です。

私は共有ファイルcommon.phpを、WEBシステムを構築するすべてのPHPファイルに読み込ませています。

// common.php内のソース
define('COMMON_DIR', dirname(__FILE__));
reuqire_once COMMON_DIR.'db_class.php';//DB処理用クラス
reuqire_once COMMON_DIR.'member_func.php';//会員用関数ファイル

みたいな感じで。requireするファイルを分けているのは、
各用途によってファイル内容を推測出来、わかりやすいからです。

そこでふと疑問に思ったのですが、このように必ずどのページでも
いくつかのファイルを読み込むことで、WEBシステムを運用していく上で、
支障が起きたりしないでしょうか?(例えば、処理速度が遅くなるなど)

common.phpには基本的に関数ファイルしか読み込まないので、
処理が遅いという実感を感じたことはありません。
ですが、上記のやり方を見て「こうした方がいい」「こういう問題がある」
というアドバイス・ご指摘がありましたら、お願いします。


●質問者: kt26
●カテゴリ:ウェブ制作
✍キーワード:Common DB PHP require Web
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● b-wind
●27ポイント

reuqire_once より require の方が早いとか些細な違いはあるが、現在行われている方法が効率的かつ一般的です。


ファイルが分かれていることによるデメリットはほとんどなく、わずかに require/require_once の関数呼び出しコストがかかるだけです。アプリケーション全体としては誤差にしかなりません。

それよりはメンテナンス性を高めるために分割するのはよいことです。


もちろんファイル分割とその中のクラス・関数に関連性がなかったりすると台無しですが。

◎質問者からの返答

なるほど。実は最近になって分けるようにしてたのですが、これまでは


「読み込むファイルが多いと、ページに負荷がかかって、ブラウザのアクセスが遅くなる」


っと誤認していました。その様なことはないみたいですね。あと、require/require_onceについても早速参考にさせていただきます。ありがとうございました。


2 ● KUROX
●27ポイント

>メンテナンス性を高めるために分割するのはよいことです。

性能が少々下がっても、分割は良いと思います。

「■性能」のなかで書いてますが

絶対パスで書いた方が処理速度が速くなるようです。

が、実際問題、そんな書き方をする必然性がないと思います。

------------------------------------------------

■性能

http://blog.goo.ne.jp/mihuu1/e/1816a8644f58ec50eea0f9f522e5ddc4

■PHPをキャッシュする

http://www.doyouphp.jp/tips/tips_mmcache.shtml

オープンソースのキャッシュは、怪しいとどうかな?と思うけど。

■PHPをキャッシュしWebアプリを高速に、ゼンド

http://www.atmarkit.co.jp/news/200312/13/zend.html

Zend

◎質問者からの返答

URL参考にさせていただきます、


3 ● toyoshi
●26ポイント

>「読み込むファイルが多いと、ページに負荷がかかって、ブラウザのアクセスが遅くなる」

というよりは、ファイルが増えればHDDへのアクセスが多くなるのでHDDへの負荷が問題になると思います。

1日数万程度のアクセスまでは問題ないと思われます。

◎質問者からの返答

確かにファイルが増えればHDDの負荷は増えますね。

ただそれもファイル数が10未満増えるだけですので、気にする程度ではないかも知れませんね。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ