2012-06-25 70 views
1

我想知道某個文件是否是有效的PHP文件?查找某個特定文件是否有效PHP文件

php -l filename只發現我們是否有語法錯誤,它是lint。

但是我也想知道,在執行時,它會無誤地運行嗎?

我在Ubuntu機器上運行。

編輯:

其實我的問題是,我允許用戶定義公式計算一下,我必須執行這些公式,而是由用戶提交的公式之前,我要確保他們是否是正確或不在PHP

+0

查明它是否會運行的唯一方法是使用各種輸入運行它。 Linters和其他分析工具無法預測可能遇到的輸入範圍。但是要明白,根據您的標題,腳本可能會遇到錯誤,仍然是「有效的PHP文件」。 –

+2

你需要編寫單元測試。由於'沒有錯誤'是未定義的。見:http://www.phpunit.de/manual/current/en/ –

+0

謝謝喬納森和理查德。但是如果我們知道我們的PHP只包含靜態的東西,比如消息等,那麼沒有輸入,那麼呢? –

回答

0

它將是真的很難知道如果一個PHP腳本會拋出一個錯誤或不。 除非公式定義得很好,您可以定義一個語法來檢查它是否正確。如:你只能添加整數,

SUM -> N | N + N 
N -> integer 

但即使是這樣,你將有很快的問題,例如,如果你允許N1/N2,你必須確保永遠不能爲null。

我的建議,確保你的程序從錯誤中恢復。並在發生錯誤時通知用戶輸入公式並提供有關錯誤的詳細信息

相關問題