PHP獲取所有擴展及擴展下的所有函數

<?php
$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);
?>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章