Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 转换OOP JSON_Php - Fatal编程技术网

Php 转换OOP JSON

Php 转换OOP JSON,php,Php,我有两个文件:apix.php和crud.php。我正在尝试将从php获取的数据转换为jason打印。问题是,该函数没有在代码的下一节中为我解析结果 CRUD.php: class crud { private $db; function __construct($DB_con) { $this->db = $DB_con; } public function dataview_new($query) {

我有两个文件:apix.php和crud.php。我正在尝试将从php获取的数据转换为jason打印。问题是,该函数没有在代码的下一节中为我解析结果

CRUD.php:

class crud
{
    private $db;

    function __construct($DB_con)
    {
        $this->db = $DB_con;
    }   

    public function dataview_new($query)
    {
        $stmt = $this->db->prepare($query);
        $stmt->execute();

        $users = array();

        while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
            array_push($users, $row);
        }

        return $users;

    }

}
APIX.php文件:

require_once 'crud.php';

$crud = new crud($DB_con);

$res = array('error' => false);

$action = 'read';

if(isset($_GET['action'])){
    $action = $_GET['action'];
}

if($action == 'read'){
    $query = "SELECT * FROM test";
    $crud->dataview_new($query);
    $res['users'] = $users;
}

header("Content-type: application/json");
echo json_encode($res);
die();
我遗漏了一些明显的东西,因为我在IF语句中的crud之外测试了代码,它运行良好:

if($action == 'read'){ // alternative code to the previous IF statement
    $result = $DB_con->prepare("SELECT * FROM `test`");
    $result->execute();
    $users = array();

    while($row = $result->fetch(PDO::FETCH_ASSOC)){
        array_push($users, $row);
    }

    $res['users'] = $users;
}

您没有将
$crud->dataview\u new($query)
的返回值分配给变量

您需要使用作业:

if($action == 'read'){
    $query = "SELECT * FROM test";
    $users = $crud->dataview_new($query); // <--assignment
    $res['users'] = $users;
}
if($action=='read'){
$query=“从测试中选择*”;

$users=$crud->dataview\u new($query);//您没有将
$crud->dataview\u new($query)
的返回值分配给变量

您需要使用作业:

if($action == 'read'){
    $query = "SELECT * FROM test";
    $users = $crud->dataview_new($query); // <--assignment
    $res['users'] = $users;
}
if($action=='read'){
$query=“从测试中选择*”;
$users=$crud->dataview\u new($query)//