質問: php初心者です。 Webサイト内で共通の操作を行うヘルパー関数群をまとめたモジュールを作りました(my_helper.php)。 これをwebサイト内の任意のファイルから呼び出したいのですがどうしたら良いのでしょうか。 サイトの構造は例えば以下のような例です。 ``` /root/ /toppage/ index.php /subpage/ index.php /q_and_a/ index.php /common-module/ helper.php <-こんな感じで配置したい ``` includeを使って相対パスで呼び出すことをしていたのですが、階層が深くなるにつれて../../..を書くのが醜くメンテナンスも大変なので、別の方法を取り入れたいと思っているところです。 よろしくお願いします。
回答: 配置は問題ないように感じます。 パスの指定方法を、 1. $_SERVER['DOCUMENT_ROOT']を使う 2. 絶対パスで指定する のどちらかにしてみてはいかがでしょうか。 1番はechoなりに上記変数を突っ込んでいただくとわかりますが、ドキュメントルート(ドメイン直下)までのパスが出力されますので、そこからのパスを繋げればOKです。 2番はサーバのルートからの絶対パスなので、サーバが変わる可能性がある場合や、そもそもレンタルサーバなどでパスがわからない可能性もあるので、あまりおすすめではないです。