php oop从数据库

时间:2016-05-16 02:01:35

标签: php database oop select

我正在尝试显示存储在数据库中的一些数据,我有这个功能,但我不知道它是如何工作的:

public function resultToArray($result){

        if(is_a($result, 'mysqli_result') && $result->num_rows > 0) {

            $myArrayResult = array ();
            while ($row = $result->fetch_assoc()) {

                $myArrayResult[] = $row;
            }

            return ($myArrayResult);
        }

        else {

            return ("Invalid Formart or Empty Result");
        }
    }

我怎样才能在前端使用它?我尝试过这种方法,但失败了......

$listar = new classes_DbManager;
$result ="Select * FROM jobs_offers";
$query = $listar->resultToArray($result);

if(mysqli_affected_rows>0){
    echo $row['username'];
}

3 个答案:

答案 0 :(得分:0)

我不知道这是什么ORM /数据库管理员,但你几乎就在那里。您需要做的是实际运行查询。然后将结果传递给函数。

它看起来像这样:

$result = $listar->RUN_THE_QUERY("Select * FROM jobs_offers");
$result_set = $listar->resultToArray($result);

RUN_THE_QUERY替换为实际运行/执行查询的方法。

之后,您将能够浏览$result_set并将其回显:

if(is_array($result_set)) {
    foreach($result_set as $_result) {
        echo $result['username'];
    }
}

答案 1 :(得分:0)

没有查看自定义类的其余部分,我只能猜测您需要在检索结果之前执行该语句。在您的resultToArray功能中,看起来它正在调用mysqli_result,这需要一个结果集才能正常工作。

首先在classes_DbManager类中搜索执行query函数的内容,它可能包含类似$result = $mysqli->query("$sql_query")的代码

我最好的猜测是它的用法需要这样的东西:

$listar = new classes_DbManager;
$query = "Select * FROM jobs_offers";
$result = $listar->executeQuery($query);
$query = $listar->resultToArray($result);

if(mysqli_affected_rows>0){
    echo $row['username'];
}

答案 2 :(得分:0)

此方法(resultToArray)不运行查询,这只返回结果中的关联数组。这个类应该有一个runQuery方法。