2011-08-08 140 views
1

這是engine.php(正常工作):PHP嵌套包括問題

<?php 
include ('settings/server_settings.php'); 
include ('settings/tables.php'); 
?> 

現在我在同一個文件夾中創建的settings.php,並用相同的內容engine.php,然後我包括此文件來engine.php,所以我得到這樣的:

engine.php:

<?php 
include ('settings.php'); 
?> 

的settings.php:

<?php 
include ('settings/server_settings.php'); 
include ('settings/tables.php'); 
?> 

現在我沒有得到任何錯誤(但在頁面頂部的隨機空(!)行),我不能使用函數,從server_settings.php和tables.php等。它似乎沒有包括,但沒有錯誤信息。 (在其他情況下,我收到錯誤信息[拼寫錯誤的位置等])

什麼錯了?

+2

打開了錯誤報告嗎? –

+0

嘗試'需要',所以會有一個錯誤,如果php不能包括文件 – Fender

+0

嘗試要求,而不是包括:require('settings.php「); –

回答

2

嘗試改變engine.php

<?php 
ini_set('display_errors', 'On'); 
error_reporting(E_ALL); 

require_once 'settings.php'; 

在文件的頂部檢查文件的Byte Order Mark。一些編輯(如DreamWeaver)會隱藏這些。

+0

轉換爲UTF-8沒有BOM,它節省了一天!謝謝。 – nemeskeriors