2012-03-22 6 views
1

私はこの方法をしばらく使用してきましたが、今まで私が過去にしてきたようにこれをやり続けるために大規模になっています。私は完全にそれを記録しているので、私はこの問題を正面から解決したい。PHPは、ディレクトリを追跡することを避けることを含む

ディレクトリのルートに「includes.php」と呼ばれるファイルがあります。このファイルには、関数、データベース接続などのPHPページなどが含まれているため、これをすべての単一ページに含める必要があります。私が必要とするものは何でも。今、私のようなディレクトリがある場合

:AJAX /ロード/ comment.php

comment.phpに私は、ページの上部にする必要がありますがあります。

<?php 
    include("../../includes.php"); 
?> 

あります必要があります私が使用することができるものであれば、ファイルを探すときに常にルートに移動します。

答えて

2

これは動作するはずです:(パスがどのように深い関係なく)

<?php 
    include $_SERVER['DOCUMENT_ROOT'].'/includes.php'; 
?> 
1

あなたにも、絶対パスを使用することができます。例:

include ('C:/Work/Webroot/store/lib/includes.php'); 

さらに、設定ファイルにベースフォルダを定義して使用することをお勧めします。

define('SITE_ROOT', 'C:/Work/Webroot/store/') 

とあなたのPHPファイルで

include(SITE_ROOT.'lib/includes.php'); 
0

あなたはより良いあなたが必要なすべてのファイルが含ま中心点を、使用する必要があります。

あなたのプロジェクトのある時点では、それは本当に面倒なことになり、その1つのファイルを含むすべての可能性について考える必要があります。

オートローダーは、大きなプロジェクトでこれらの問題に対処するのに役立ちます。 PHP自体にはいくつかのbasic autoloadingルーチンが付属しています。

関連する問題