我正在挖掘PHP(使用PHPStorm)來弄清楚Exceptions是如何工作的,並且我在一個有趣的情況下繼續運行,其中函數有空塊。爲什麼看起來PHP核心函數有空塊?
例如,在PHP Runtime/Core/Core.php
,該error_reporting
函數的定義是這樣的:
function error_reporting ($level = null) {}
而且這不是唯一的。那文件頂部是這樣的(忽略所有的文檔註釋):
<?php
// Start of Core v.5.3.6-13ubuntu3.2
function zend_version() {}
function func_num_args() {}
function func_get_arg ($arg_num) {}
function func_get_args() {}
function strlen ($string) {}
爲什麼括號所有空?查看其他核心文件,我看到很多函數定義,但沒有實際的代碼。一切都在哪裏?
那些看起來像存根定義,而不是實際的實現。 – tadman
我認爲它在PHP處理器本身內。 – aynber
這些只是在那裏提供的,所以你的IDE可以爲你提供自動完成和類似的有用功能。 – Giedrius