為什么PHP函數(shù)可以在定義聲明前就能調(diào)用?PHP程序的執(zhí)行不是從上到下的嗎?函數(shù)全局性的基本原理是什么?
為什么PHP函數(shù)可以在定義聲明前就能調(diào)用?PHP程序的執(zhí)行不是從上到下的嗎?定義聲明前,調(diào)用程序怎么能找到函數(shù)?PHP聲明函數(shù)函數(shù)存放在內(nèi)存的什么位置的?
為什么PHP函數(shù)可以在定義聲明前就能調(diào)用?PHP程序的執(zhí)行不是從上到下的嗎?定義聲明前,調(diào)用程序怎么能找到函數(shù)?PHP聲明函數(shù)函數(shù)存放在內(nèi)存的什么位置的?
2015-01-09
舉報
2016-10-27
首先PHP不是單純的按照行來邊解釋邊執(zhí)行的,而是先由Zend引擎翻譯PHP代碼到Zend二進制操作碼,然后再去執(zhí)行操作碼。
對于函數(shù)的位置,因為函數(shù)的作用域是全局的,所以只要定義了,那么就可以在任意位置去調(diào)用它。
PHP 中的所有函數(shù)和類都具有全局作用域,可以定義在一個函數(shù)之內(nèi)而在之外調(diào)用,反之亦然。