2014-01-15 76 views
0

系統: 我使用Windows 7並運行XAMPP控制面板v3.2.1。包含具有相對路徑的文件,PHP

我有這個文件結構

ROOT/test/test.php 
ROOT/app.php 
ROOT/config.php 

在test.php的我有這樣的app.php:

require '../app.php'; 
在app.php

我有這樣的config.php文件: require_once'config.php';

在那裏,我定義一個變量:

$config['test'] = 'test'; 

這個變量我app.php使用這樣的:

$test = $config['test']; 

當我現在運行test.php的,PHP告訴我說:

Notice: Undefined variable: config in ROOT\app.php 

我在做什麼錯?

+1

如果你在函數中使用,那麼你應該使用'global $ config'; –

+0

@kumar_v不建議使用'global'! – voodoo417

+0

您必須以正確的順序包含這些文件。在app.php之前加入config.php。 – smiggle

回答

1

我認爲include/include_once和require/require_once有區別。但是如果你想從同一個目錄中包含它,你可以嘗試使用這個例子:

require_once(__DIR__ . '/config.php'); 
+0

要求和包含之間沒有真正的區別,除了它們拋出錯誤的不同錯誤。但我通常在我的代碼中使用這個例子。 –

+0

爲什麼人們仍然用這些多餘的括號修飾'require_once'等等? –

相關問題