PHP fetchAll(PDO::FETCH_ASSOC)在语句中返回null

PHP fetchAll(PDO::FETCH_ASSOC)在语句中返回null,php,pdo,fetchall,Php,Pdo,Fetchall,我正在尝试使用PDO::fetch_ASSOC获取插入数据库中的数据 由于某种原因(可能缺乏理解…),我无法从类方法中回显数据 这是db表结构: 我想将数据作为$fieldName['value']=>$fieldVal['value'] 我有一个类,通过匹配tz和year值,从表中选择所有数据。 从函数内部的打印中,我收到了一个良好的数据。 如果从类文件外部调用该方法,则接收的所有值都为null 这是我的班级代码: function dataExist($tz, $year){ $t

我正在尝试使用
PDO::fetch_ASSOC
获取插入数据库中的数据

由于某种原因(可能缺乏理解…),我无法从类方法中回显数据

这是db表结构:

我想将数据作为
$fieldName['value']=>$fieldVal['value']

我有一个类,通过匹配
tz
year
值,从表中选择所有数据。 从函数内部的打印中,我收到了一个良好的数据。 如果从类文件外部调用该方法,则接收的所有值都为null

这是我的班级代码:

function dataExist($tz, $year){
    $tz = 303748891;
    $year = 2017;
    $query = "SELECT * FROM ". $this->table_name ." WHERE tz = ? AND year = ?";

    $stmt = $this->conn->prepare($query);

    $stmt->bindParam(1, $tz);
    $stmt->bindParam(2, $year);

    // execute query
    $stmt->execute();

    //get all data
    $result = $stmt->fetchAll(PDO::FETCH_ASSOC);


    echo '<pre>';
    print_r( $result);
    echo '</pre>';

    return $result;


}
这是来自另一个文件的调用:

Form Object
(
    [conn:Form:private] => PDO Object
        (
        )

    [table_name:Form:private] => submisions
    [id] => 
    [tz] => 
    [fieldName] => 
    [fieldVal] => 
    [year] => 
)

您没有将方法调用的结果分配给变量。改变

$thedata=$dataExist->dataExist($tz,$year)

然后


您将看到您期望的结果。

您没有将方法调用的结果分配给变量。尝试更改
$dataExist->dataExist($tz,$year)
$thedata=$dataExist->dataExist($tz,$year)然后在
$thedata
上使用print\r。。。现在我明白了。。。非常感谢。
$dataExist = new Form($db);
$dataExist->dataExist($tz,$year);
echo '<pre>';
print_r( $dataExist);
echo '</pre>';
Form Object
(
    [conn:Form:private] => PDO Object
        (
        )

    [table_name:Form:private] => submisions
    [id] => 
    [tz] => 
    [fieldName] => 
    [fieldVal] => 
    [year] => 
)
$dataExist->dataExist($tz,$year); 
print_r($thedata);