2024 年 PHP 日本研討會

opcache_compile_file

(PHP 5 >= 5.5.5, PHP 7, PHP 8, PECL ZendOpcache > 7.0.2)

opcache_compile_file編譯並快取 PHP 腳本而不執行它

說明

opcache_compile_file(字串 $filename): 布林值

此函式會編譯 PHP 腳本並將其新增至操作碼快取,而不執行它。這可以用於在 Web 伺服器重新啟動後,透過預先快取稍後請求中將包含的檔案來預熱快取。

參數

filename

要編譯的 PHP 腳本的路徑。

返回值

如果 filename 編譯成功,則返回 true,否則返回 false

錯誤/例外

如果 filename 無法載入或編譯,將會產生層級為 E_WARNING 的錯誤。您可以使用 @ 來抑制此警告。

另請參閱

新增註釋

使用者貢獻的註釋 1 則註釋

IceNV
6 年前
請注意,opcache 只會編譯和快取比腳本執行開始時間更舊的檔案。

例如,如果您使用腳本來產生快取檔案(例如,您無法存取 shmop 並且依賴 opcache 進行記憶體內資料快取),opcache_compile_file 將不會將產生的檔案包含在快取中,因為它的修改時間在腳本開始之後。

解決方法是使用 touch() 設定一個早於腳本執行時間的日期,然後 opcache 將會編譯並快取產生的檔案。
To Top