擷取開啟的所有PHP擴充及該擴充下的函數

來源:互聯網
上載者:User


get_loaded_extensions — 返回所有編譯並載入模組名的 array

array get_loaded_extensions ([ bool $zend_extensions = false ] )

該函數返回了 PHP 解析器裡所有編譯並載入的模組名。

說明 array  get_loaded_extensions ([  bool $zend_extensions = false ] )

該函數返回了 PHP 解析器裡所有編譯並載入的模組名。

參數

zend_extensions

只返回 Zend 擴充,並非類似 mysqli 的普通擴充。預設是 FALSE (返回普通擴充)。 傳回值

返回所有模組名的一個索引數組(array)。

Array(    [0] => Core    [1] => bcmath    [2] => calendar    [3] => ctype    [4] => date    [5] => ereg    [6] => filter    [7] => ftp    [8] => hash    [9] => iconv    [10] => json    [11] => mcrypt    [12] => SPL    [13] => odbc    [14] => pcre    [15] => Reflection    [16] => session    [17] => standard    [18] => mysqlnd    [19] => tokenizer    [20] => zip    [21] => zlib    [22] => libxml    [23] => dom    [24] => PDO    [25] => openssl    [26] => SimpleXML    [27] => wddx    [28] => xml    [29] => xmlreader    [30] => xmlwriter    [31] => apache2handler    [32] => curl    [33] => gd    [34] => mbstring    [35] => mysql    [36] => mysqli    [37] => Phar    [38] => pdo_mysql    [39] => pdo_sqlite    [40] => soap    [41] => SQLite    [42] => mhash)


get_extension_funcs — 返回模組函數名稱的數組

說明 array  get_extension_funcs (  string $module_name )

該函數根據 module_name 返回模組內定義的所有函數的名稱。 參數

module_name

模組名稱。

Note:

這個參數必須是小寫(lowercase)的。 傳回值

返回包含所有函數名的數組,如果 module_name 不是一個有效擴充則返回 FALSE。 extension_loaded — 檢查一個擴充是否已經載入

說明 bool  extension_loaded (  string $name )

檢查一個擴充是否已經載入。 參數

name

副檔名稱,大小寫不敏感。 傳回值

如果 name 指定的擴充已載入,返回TRUE,否則返回 FALSE。



樣本:


$ext_info = array();$loaded_extensions=get_loaded_extensions();//擷取已載入的擴充foreach($loaded_extensions as $ext){    $funs=get_extension_funcs($ext);//擷取某一擴充下的所有函數    if(!empty($funs) && is_array($funs))    {        foreach($funs as $fun)        {            $reflect = new ReflectionFunction($fun);            $params = $reflect->getParameters();//擷取函數參數資訊            $param_str = '';            if(!empty($params) && is_array($params))            {                foreach($params as $param) {                    if($param->getName() != '')                    {                        $param_str .= '$'.$param->getName().',';                    }                }                $param_str = substr($param_str,0,-1);            }            $ext_info[$ext][] = $fun.'('.$param_str.')';        }    }}echo '<pre>';print_r($ext_info);


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.