当前位置:首页 » 编程语言 » php获取子类

php获取子类

发布时间: 2022-04-05 05:19:21

php中父类里调用子类的方法

无解,除非是静态public方法,function前加static,可以testB::demo2()这样调用
子类重写之后的方法父类没法调用,换句话说,父类咋知道自己会被哪个子类继承呢,就算你强转虚表也不一样,无解的问题
而且父类咋需要调用子类的方法呢,就算你以后实践中有这样的需求,也只能说明你设计上不合理

⑵ 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 继承怎么调用子类的新方法

这样不行,也不符合逻辑,因为父类不会知道子类定义了什么方法,所以,父类去调用子类就不合理。如果还有不懂的话,可以去后盾人学习学习,里面真的有不错的资料,相信你可以的

⑷ 关于PHP继承的问题,父类方法访问子类属性

把class b 中的private改成protected 或者public就不出错了
private 不允许继承类成员调用
protected 所有继承类成员都能用
public 所有成员都能调用

⑸ PHP中一个子类继承父类后,如何获取父类中的该private声明的属性呢

私有属性 谁都不可见 不能直接用 在子类中不可用
所谓的继承使子类拥有父类所有的属性和方法其实可以这样理解,子类对象确实拥有父类对象中所有的属性和方法,但是父类对象中的私有属性和方法,子类是无法访问到的,只是拥有,但不能使用。

public class A {
private int a;

public int getA(){
return a;
}
public void setA(int a){
this.a=a;
}

}
public class B extends A{
private int b;

public int getB() {
return b;
}

public void setB(int b) {
this.b = b;
}

}
public class C extends B {
private int c;
public int getC() {
return c;
}

public void setC(int c) {
this.c = c;
}
}
那么当C c1=new C()时。c1可以使用setA()getA()访问控制从A类中继承来的私有属性a;

⑹ php 如何在父类访问子类的属性

可以

用$this就可以了。

静态的属性直接用类名访问

⑺ php如何获取父类下所有子类Id

今天做项目时遇到php如何获取父类下所有子类Id??,把代码分享给大家。


复制代码代码如下:
functiongetChildrenIds($sort_id)
{
$db=$this->loadDB();
$ids='';
$sql="SELECT*FROMt_deptWHERE`parent_id`='{$sort_id}'";
$query=$db->query($sql);
$result=$query->result_array();

if($result)
{
foreach($resultas$key=>$val)
{
$ids.=','.$val['id'];
$ids.=$this->getChildrenIds($val['id']);
}
}
return$ids;
}

⑻ php 知道父类id查找所有子类id,怎么写。

functiongetAllIds($id)
{
$res=mysql_query("select*from`表名`wherefather_id='$id'");
while($row=mysql_fetch_array($res,MYSQL_ASSOC))
{
print_r($row);
getAllIds($row['class_id']);
}
}

⑼ PHP如何在父类中定义子类

<?
class father{
public $name;
public function __construct($name){
$this->name=$name;
}
public function show(){

return "这是".$this->name;
}
}
//子类的定义
class child extends father{

public function test(){
return "这是子类的一个函数";
}

}
//父类实例化
$p = new father("父类");
//子类实例化
$p2 = new child("子类");
echo $p->show();
echo "<br>";
//子类调用父类的函数
echo $p2->show();
echo "<br>";
//子类调用自己的函数
echo $p2->test();

?>

⑽ PHP获取类名的一个问题(基类获取子类名)

从父类中获得子类名称,并不是不可能,
但是,这样做严重违背设计原则,属于设计错误。设计上不及格。。
应该检讨自己的需求和模型设计。

把具体应用情况说一说,我看看哪里做扭曲了

热点内容
ftp搭建win7 发布:2025-05-20 10:06:06 浏览:82
访问坚果 发布:2025-05-20 10:06:02 浏览:394
ftpxlight 发布:2025-05-20 10:05:22 浏览:111
java的实验报告 发布:2025-05-20 10:02:06 浏览:528
豪华配置高电动轿车有哪些 发布:2025-05-20 10:01:59 浏览:487
哪些电脑配置低 发布:2025-05-20 09:34:16 浏览:955
地板网站源码 发布:2025-05-20 09:27:23 浏览:346
安卓视频转换器怎么使用 发布:2025-05-20 09:20:52 浏览:544
telnet批量脚本 发布:2025-05-20 09:11:58 浏览:627
搭建jrebel服务器 发布:2025-05-20 08:57:40 浏览:903