社区首页 >问答首页 >如何通过创建另一个类的对象的类访问方法?

如何通过创建另一个类的对象的类访问方法?
EN

Stack Overflow用户
提问于 2015-01-13 15:37:05
回答 1查看 30关注 0票数 1

我有一个名为Model的类

代码语言:javascript
代码运行次数:0
复制
<?php
class Model {
    function __construct() {
        $this->db = new Database(DB_TYPE, DB_HOST, DB_NAME, DB_USER, DB_PASS);
    }
}

我想从类对象中访问方法,这个构造是实例化的,它来自一个名为数据库的类,它有一些方法,比如使用PDO进行插入。错误指示类 model 不包括来自数据库类的方法,我不知道如何通过数据库类中存在的模型类访问方法

代码语言:javascript
代码运行次数:0
复制
$db = new Model();
$db->insert('app', 'asdfsdf');

Fatal error: Call to undefined method Model::insert()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-13 15:45:46

实例化Database类的方式是Model类的一个属性。所以它是这样访问的:

代码语言:javascript
代码运行次数:0
复制
$model->db->insert('app', 'asdfsdf');

如果要以这种方式访问$db属性,还应该确保将其声明为public

代码语言:javascript
代码运行次数:0
复制
<?php
class Model {
    public $db;
    function __construct() {
        $this->db = new Database(DB_TYPE, DB_HOST, DB_NAME, DB_USER, DB_PASS);
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27933508

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文