2013-06-19 67 views
1

php是一種腳本語言,所以類定義語句應該在聲明或使用該類之後存在。類存在於同一個文件中

爲什麼在PHP中可能聲明並使用之前在同一個文件中聲明的類?

<?php 
var_dump(class_exists('TestClass'));#outputs true, why ? 
$obj = new TestClass(); 
$obj->hello(); 
var_dump('final'); 

class TestClass{ 
    function hello(){ 
     var_dump('hello'); 
    } 
} 

輸出是:

bool(true) string(5) "hello" string(5) "final" 

答案: 我創建用於明白懸掛一個例子在JavaScript和PHP,請參閱https://gist.github.com/AndresRicardoTorres/5815833

回答

2

類定義被懸掛,就像函數定義(除非它們在條件語句塊中)

+0

類和函數具有全局範圍,但我的問題是關於命令執行,wh如果我寫'echo「Hello World!」,那麼這個類就會在開頭 –

+4

處出現。在這種情況下,「Hello World!」會顯示在解析錯誤之前嗎?不,PHP不會處理這個文件,而是分別處理一些重要的文件。 –

+0

發現懸掛的文檔?爲什麼手冊沒有提及?在哪裏找到關於php進程? –

相關問題