2011-10-26 27 views
0

有人知道如何創建始終包含在php文件中的腳本。
例如,我有一個index.php文件,我想包括通過做include 'script.php'; 同樣的script.php,我有一個的login.php,我想這樣做,包括script.php的include 'script.php';PHP在單個文件中執行包含語句,但許多文件將受到影響

我覺得這非常累人,我認爲這不是一個好主意,因爲它非常重複。有沒有一種方法,我可以包括script.php而不包括在每個文件中?就像我應該在單個文件中那樣做,那麼一切都會受到影響。

任何想法將不勝感激和獎勵。謝謝! :)

回答

2

從字面上你所問的,我知道的唯一途徑是通過配置選項:

auto_prepend_file

如果你的PHP代碼是面向對象的,你可以看看清潔解決方案,如autoload。我會推薦auto_prepend_file。從這個步驟開始,僅僅使用1個文件,您可以將其包含在所有其他文件中,可能名稱爲init.php,但隨後您需要的任何其他文件都包含在您添加到init.php的所有文件中。不是最乾淨的解決方案,但易於實施,並且不涉及任何配置更改。

+0

這對我有幫助。 http://www.codeforest.net/autoload-your-classes-in-php 謝謝! :) – PinoyStackOverflower

1

您可以使用auto_prepend_file

+3

這肯定會起作用,但我會傾向於提出反對意見,因爲很容易忘記*每個*腳本都會添加此文件,並可能產生意想不到的後果。 –

+0

@Michael等等呢?你不打算放一些初始變量嗎? –

+2

@邁克爾,優點。隨着您的PHP應用程序老化並進入維護模式,「那又如何?」通常會變成被遺忘的事情,因爲應用程序的責任已經轉移。該配置指令位於代碼庫之外,因此很容易誤導其他嘗試維護代碼庫的開發人員。 – ctcherry

3

PHP configuration指令auto_prepend_file是否這樣做,但我認爲最好用autoload函數代替。這樣,如果您使用的類未定義,則其源文件將自動定位幷包含在內。當然,你必須做一些額外的工作來構建文件系統並編寫代碼來定位這些文件。 SO上的questionslots,涵蓋了自動加載策略。

相關問題