導航:首頁 > 編程語言 > php獲取類所有方法名

php獲取類所有方法名

發布時間:2022-11-29 04:07:40

php獲取、檢查類名、函數名、方法名的函數方法

1.function_exists()
-
Return
TRUE
if
the
given
function
has
been
defined
2.is_callable()
-
檢測參數是否為合法的可調用結構
3.class_exists()
-
檢查類是否已定義
4.method_exists()
-
檢查類的方法是否存在
__FUNCTION__
函數名稱(PHP
4.3.0
新加)。自
PHP
5
起本常量返回該函數被定義時的名字(區分大小寫)。在
PHP
4
中該值總是小寫字母的。
__CLASS__
類的名稱(PHP
4.3.0
新加)。自
PHP
5
起本常量返回該類被定義時的名字(區分大小寫)。在
PHP
4
中該值總是小寫字母的。
__METHOD__
類的方法名(PHP
5.0.0
新加)。返回該方法被定義時的名字(區分大小寫)。
註:這些常量前後均是兩個下劃線。
get_class(class
name);//取得當前語句所在類的類名
get_class_methods(class
name);//取得class
name
類的所有的方法名,並且組成一個數組
get_class_vars(class
name);//取得class
name
類的所有的變亮名,並組成一個數組

❷ php列出一個類文件所有方法名稱

$class=new Class();
$arr=get_class_methods(get_calss($class));
print_r($arr);
就可以看到 了,
主要是用了 get_class_methods( sttring class_name) 函數,

❸ php 怎麼獲取當前函數名稱

php提供的一些系統常量可以完成這些
php獲取當前方法名(函數名) __FUNCTION__
php獲取當前類名 __CLASS__ 或者 get_class($this);
php獲取本類所有的方法名 get_class_methods($this);實例如下
class Test{
function kkk(){
return get_class_methods(Test);
}
function meme(){

}
function myfunction(){
}
}
$y=new Test();
print_r($y->kkk());
返回結果如下
Array ( [0] => kkk [1] => meme [2] => myfunction )
php獲取類中所有的成員屬性,返回一個數組 get_class_vars(class name); 實例如下
class Test{
public $tt="dddd";
public $aa="aaaaaaaa";

function kkk(){
return get_class_vars(Test);
}
}
$y=new Test();
print_r($y->kkk());
返回結果如下
Array ( [tt] => dddd [aa] => aaaaaaaa )

❹ PHP中如何獲得當前類的名稱,而實例化後獲取子類的名稱

php 4.3以後新增了一個魔術常量__CLASS__,用來獲得當前class名稱。但是在下面的代碼中,卻不work。class A {
function showclass() {
echo __CLASS__;
}
}
class B extends A {}

A::showclass();
B::showclass(); 這段代碼會打出兩個A,而不是預想中的AB。下面這段代碼,利用debug_backtrace來獲得當前class名,可惜只能在php4上面work,到了php5以上,測試結果全部都是AA-___-class A {
function showclass() {
$backtrace = debug_backtrace();
echo $backtrace[0]['class'];
}
}

class B extends A {} 補充一個可以在php4/php5下work的代碼class A {
function showclass() {
$backtrace = debug_backtrace();
echo ((int)PHP_VERSION> 4) ?
get_class($backtrace[0]['object']) : $backtrace[0]['class'];
}
}
class B extends A {}

❺ PHP怎麼獲取很多Class文件裡面所有Class的方法

實例化這個class,然後就可以調用class裡面的所有方法了。

實例化的方法:

首先在需要調用的php文件裡面用include引入這個class文件。

include'你的class文件';

然後進行實例化,比如class名為test。

$m=newtest();

實例化後可以調用class裡面的任何方法,例如有個方法名為。

$m->();

這樣就成功的完成了。

❻ thinkphp5 怎麼獲取控制器下所有方法名稱

當前操作名稱 APP_PATH : 當前項目目錄 APP_NAME : 當前項目名稱 這些都是一些系統常量,可以在控制器裡面直接調用 比如說 echo __APP__ ,

❼ thinkphp5 怎麼獲取當前的模塊,控制器和方法名

問題解析:

thinkphp5系列需要獲取當前的模塊、控制器以及方法名稱,可以使用自帶的Request類,也可以使用request助手函數。接下來舉例說明:

假設我們現在訪問的地址是index/member/add,我們來獲取這個地址的模塊、控制器、方法名稱

1、獲取模塊名:

echo"當前模塊名稱是:".request()->mole();

輸出結果:

❽ PHP-php怎樣自動獲取被調用的類名

(PHP 4, PHP 5)

get_class -- 返回對象的類名

說明
編輯

string get_class ( [object obj] )

返回對象實例 obj 所屬類的名字。如果 obj 不是一個對象則返回 FALSE。

注: 在 PHP 擴展庫中定義的類返回其原始定義的名字。在 PHP 4 中 get_class() 返回用戶定義的類名的小寫形式,但是在 PHP 5 中將返回類名定義時的名字,如同擴展庫中的類名一樣。

注: 自 PHP 5 起,如果在對象的方法中調用則 obj 為可選項。

<?php
classfoo{
functionfoo()
{
//implementssomelogic
}
functionname()
{
echo"Mynameis",get_class($this)," ";
}
}
//createanobject
$bar=newfoo();
//externalcall
echo"Itsnameis",get_class($bar)," ";
//internalcall
$bar->name();
?>

輸出:

Its name is foo

My name is foo

❾ php有沒有什麼函數可以獲取一個方法中的參數名和參數類型的

/**
*獲取一個函數的依賴
*@paramstring|callable$func
*@paramarray$param調用方法時所需參數形參名就是key值
*@returnarray返回方法調用所需依賴
*/
functiongetFucntionParameter($func,$param=[]){
if(!is_array($param)){
$param=[$param];
}
$ReflectionFunc=newReflectionFunction($func);
$depend=array();
foreach($ReflectionFunc->getParameters()as$value){
if(isset($param[$value->name])){
$depend[]=$param[$value->name];
}elseif($value->isDefaultValueAvailable()){
$depend[]=$value->getDefaultValue();
}else{
$tmp=$value->getClass();
if(is_null($tmp)){
thrownewException("{$class}");
}
$depend[]=$this->get($tmp->getName());
}
}
return$depend;
}


functiontest($a,$b=20){
echo$a,',',$b;
}

$depend=getFucntionParameter('test',['a'=>30,'b'=>40]);

call_user_func_array('test',$depend);//30,40

上面的函數是我開發的框架的容器的方法。

php提供了很完整的反射機制。不但可以反射函數,還可以反射方法,反射類構造函數。

閱讀全文

與php獲取類所有方法名相關的資料

熱點內容
iphone怎麼隱藏app內容 瀏覽:954
移動手機怎麼修改登錄密碼app 瀏覽:582
兩點間中點垂直線cad命令 瀏覽:32
dpdk編程開發 瀏覽:978
linux編輯文件退出命令 瀏覽:883
好看的網站 瀏覽:764
class版本為過高無法反編譯 瀏覽:467
vivo手機怎麼刪除app上的小鎖 瀏覽:462
泰國《永恆》未刪減 瀏覽:952
程序員小妹留學新加坡 瀏覽:459
app為什麼要做伺服器端app 瀏覽:608
華為電腦命令提示符在哪 瀏覽:80
法國啄木鳥網站入口 瀏覽:601
java的api怎麼打開 瀏覽:277
一本主角叫林楓的重生小說 瀏覽:809
超級靈魂解壓視頻 瀏覽:536
葉天明和柳韻 瀏覽:138
韓國愛情片在線觀看 瀏覽:745
h264壓縮工具 瀏覽:320
為什麼app總是用手機號注冊 瀏覽:430