2013-10-21 56 views
3

在PHP文件,它說:什麼時候需要在實例化之前定義一個類?

類應定義實例之前(在某些情況下,這是一個要求)。

有人可以給我一個類的例子,除非它是先前定義的,否則不能被實例化?

+0

我沒有意識到可以實例化一個沒有定義的類 - 除了'stdClass',但這是在PHP內核中定義的。但也許這裏的含義是一個未定義類的反序列化,它會給你一個警告和一個不完整的類('PHP_Incomplete_Class') – ErnestV

回答

3
if (true) { 
    new Foo; 
    class Foo { } 
} 

解析規則是相同的功能:如果他們在一個文件中的「頂級」正在定義,他們中,還有正在解析,文件的解析。如果它們是在一段需要運行時評估的代碼中定義的,那麼只有在代碼執行時纔會定義類或函數,在這種情況下,在「執行」之前不能使用它。

相關問題