php取類名
『壹』 php獲取類名的一個問題(基類獲取子類名)
從父類中獲得子類名稱,並不是不可能,
但是,這樣做嚴重違背設計原則,屬於設計錯誤。設計上不及格。。
應該檢討自己的需求和模型設計。
把具體應用情況說一說,我看看哪裡做扭曲了
『貳』 PHP中如何獲得當前類的名稱,而實例化後獲取子類的名稱
通過 get_declared_classes 獲取所有的類,
然後循環這個array,再通過 instance_of 檢測是否是你指定類的子類,然後push到一個數組中.
『叄』 PHP 獲取類名
在PHP中可以使用魔術方法 __CLASS__ 來獲取類名
官方文檔如下
如果想要得到不包含類的作用域的名稱或類的作用域則需要下面兩個函數
類包含作用域的名稱
類作用域的名稱
類不包含作用域的名稱
『肆』 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怎麼命名比較規范
1、類
類名每一個單詞首字母大寫,如類名StudentCourse。
2、常量
常量名所有字母大寫,單詞間用下劃線分隔,如常量名NULL、TRUE、FALSE、ROOT_PATH等。
3、變數
為了保證代碼的具有良好的可讀性,一般要求在同一個軟體系統中,變數的命名原則必須統一。
如變數的命名可以為第一個單詞首字母小寫,其餘單詞首字母大寫(駝峰);
還可以採用單詞所有字母小寫,單詞之間用下劃線分割。
4、數組
數組是一個可以存儲多個數據元素的容器,因此在為數組命名是,盡量使用單詞的復數形式。
5、函數
函數的命名規范和變數名的命名規范相同。通常函數都是執行一個動作的,因此函數命名時,一般函數中會包含動詞。
6、資料庫表欄位
資料庫表欄位的命名規范和變革兩名的命名規范相同。
7、類文件
PHP類文件命名時通常以.class.php為後綴,文件名和類名相同。
『陸』 php列出一個類文件所有方法名稱
php獲取當前類所有方法名稱的函數:get_class_methods(class name),class name指類名,調用後會返回類中所有方法組成的數組。
此外,類似功能的語句還有
get_class(classname);//取得當前語句所在類的類名
get_class_vars(classname);//取得classname類的所有的變亮名,並組成一個數組
『柒』 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 a{
var $curIns;
function __construct(){
$this->curIns= get_class($this);
}
}
class b extends a{
function __construct(){
parent::__construct();
echo $this->curIns;
}
}
new b(); //這里會輸出b
『玖』 php 怎麼獲取當前函數名稱
使用__FUNCTION__
function test()
{
echo __FUNCTION__; // test
}
test();