2013-08-01 35 views
0

我有PHP應用程序,它運行大約2-3分鐘後才返回瀏覽器(某些數據庫處理內容)。PHP腳本如何在服務器上緩存(?)?

我想知道,如果我可以在腳本運行時用它更改php文件。我假設,Apache/PHP中有一個緩衝區。

我有這樣的情況:

// This is index.php 

include "DatabaseController.php"; // class inside, I create instance at start 
include "ImagesController.php"; // class inside, I create instance at start 
include "helpers.php"; // there are just functions, no classes 

$db = new Database(); 
$img = new Images(); 

// for loop doing job here (2-3 minutes) 

// end 

會發生什麼,當我的腳本運行時替換「DatabaseController.php」文件?

我試圖測試它,它看起來像「作業部分」仍然使用舊版本的DatabaseController,當我替換。

但是......當我替換「helpers.php」文件時會發生什麼?它只包含函數,沒有可以在腳本開始處實例化的類。

這種緩衝如何工作?

+0

如果在執行文件時更改文件,則不會發生... – 2013-08-01 23:18:09

+0

您的意思是說,所有包含的文件都被緩衝了嗎? – Kamil

+1

如果已包含它們,它們的行爲不會改變(更改爲操作碼)。如果你的腳本開始了,那麼_then_你改變文件,只有_then_發生'include',它當然會看到新文件。 – Wrikken

回答

1

它沒有真正被緩衝。你應該閱讀Compilers。總之,您編寫的代碼在執行之前需要首先編譯。編譯完成後對源進行的更改只有在下次請求再次重新編譯時纔會生效。

相關問題