从另一个类调用函数

时间:2016-01-02 03:39:47

标签: php function class pdo

我有一个名为" dbConnect"的类。另一个用于上传文件" uploadFiles",我想从" dbConnect"中调用一个函数。在里面" uploadFiles":

数据库连接:

final class dbConnect {
// some codes and functions


public final function prepareStm($query){

        $this->query = $query;

        $insertDB = $connexion->prepare($this->query);          
} // end prepareStm()

// some other codes and functions

}

现在在uploadFiles中:

final class uploadFiles {
// some codes and functions


public final function scanFile() {

    $time_start = microtime(true);

    cl_engine(10000, 734003200, 734003200, 25, 0);

    ini_set('max_execution_time', 120);

    $retcode = cl_scanfile($this->fileTmp, $virusname);

    ini_restore('max_execution_time');

    $time_end = microtime(true);
    $timeTaken = $time_end - $time_start;

    $this->timeTaken    = $timeTaken;

        if ($retcode == CL_VIRUS) {
            return true;
                $this->aErrors[] = "File path : ".$this->fileTmp." Return code : ".cl_pretcode($retcode)." Virus found name : ".$virusname; 



// AND HERE I would like to call the "prepareStm" function from the dbConnect class to insert some information inside the database

} 

            return false;


} // end scanFile

// some other codes and functions

}

修改: 这很简单:

<?php

require_once 'classA.php';

final class classB {

 public $prop1 = "I'm a class property!";

    public function setProperty($newval)
    {
        $this->prop1 = $newval;
    }

    public function addProperty()
    {   
        $connect = new classA();
        $connect->getProperty();
        $res = $connect->getProperty();
    }
}

$obj = new classB;

echo $obj->addProperty();

?>

如何调用名为&#34; functionA&#34;的函数?来自名为&#34; classA&#34;?

的班级

感谢您的支持

2 个答案:

答案 0 :(得分:1)

也许你可以这样写:

$connect = new dbConnect();
$connect->prepareStm($query);

答案 1 :(得分:1)

有两种方法可以从单独的类调用函数。

第一种是将类作为对象实例化并让该对象调用该函数。

$db = new dbConnect();
$db->prepareStmt($sql);

如果需要从return语句中获取结果,只需要一个等于它的变量。

$res = $db->prepareStmt($sql);

第二种方法是从类本身静态调用该函数。

dbConnect::prepareStmt($sql);

任何一种方法都需要您包含该类。

include dbConnect.php;
相关问题