① 父類如何獲得子類的類名 - 技術問答
..單純的直接獲取。父類無法讀取/設置子類的任何東西(因為父類不知道誰繼承了他。囧。)yafeikf 發表於 2009-7-23 23:42[i][/url][/b]我的意思是 我現在有一個Model類??一個SubModel類我在SubModel類中調用 find方法, 該方法重Model類中繼承過來的那麼調用find方法時, 不傳任何參數, 我怎麼查詢Sub表呢?
② php類繼承派生
你的$name $sex $age 這三個屬性都是私有的,而在子類student中是無法繼承私有的屬性的,所以即使你在子類中用extends繼承了父類,也無法把 $name $sex $age 繼承過來,所以你實例化student類的時候,這三個自然就沒有賦值。所以就是空了。。。http://cn.php.net/manual/zh/keyword.extends.php 這是官網的教程,感覺還不錯。。你要多看手冊和官網,很不錯。很專業。。
③ php寫函數根據子類(id)遞歸查找頂級父類(id)返回父類名字(表結構:idnamepid)
這個問題很簡單!你肯定得是兩張表吧一張是table1(idnamepid)一張是table2(pidname)多表聯查:selecttable2.nameasp_name,pidasp_.pid=table2.pidwhereid='輸入你的子類ID'就可以查詢了,望採納
④ php 知道父類id查找所有子類id,怎麼寫。
樓主,可以參考這個文檔http://www.doc88.com/p-989614539176.html裡面有php遞歸函數遍歷所有子分類id
⑤ php怎麼實現一張表中子類ID歸於父類ID
先查出父類,也就是說先把SupMoleId裡面值為-1的按升序全部select出來,再用foreach或者while查詢子類SupMoleId=篩選出來的父類MoleId就可以了。
代碼如下:
$sql_f="SELECT*FROMtmole_confWHERESupMoleId=-1ORDERBYMoleIdASC";
$result_f=mysql_query($sql_f);
while($row=mysql_fetch_array($result_f)){
$f_id=$row['MoleId'];
echo$row['MoleName']."<br/>";
$sql_c="SELECT*FROMtmole_confWHERESupMoleId=".$id;
$result_c=mysql_query($sql_c);
$arr_c=mysql_fetch_array($result_c);
foreach($arr_cas$res){
echo"---".$res['MoleName']."<br/>";
}
}
⑥ php父類如何調用子類的靜態方法或變數
<?php
classA{
staticpublic$m=1;
staticpublicfunctionm(){
echostatic::$m,'<br/>';
}
staticpublicfunctionn(){
static::n();
}
}
classBextendsA{
staticpublic$m=111;
staticpublicfunctionm(){
parent::m();
}
staticpublicfunctionn(){
echoparent::$m,'<br/>';
}
}
B::m();
B::n();
⑦ php寫函數 根據子類(id)遞歸查找頂級父類(id) 返回父類名字 (表結構:id name pid)
你肯定得是兩張表吧 一張是 table1 (id name pid ) 一張是 table 2(pid name)
多表聯查:select table2.name as p_name , pid as p_id from table1 right join table2 on table1.pid=table2.pid where id=' 輸入你的子類ID'
就可以查詢了 ,望採納
⑧ 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 A{
function __construct(){
echo 'child class name is:'.$this->getClassname();
}
function getClassname(){
return $this->name;
}
}
class B extends A{
protected $name = 'B';
}
$obj = new B();
?>
⑩ php 如何在父類訪問子類的屬性
可以
用$this就可以了。
靜態的屬性直接用類名訪問