不能在laravel上使用stdClass类型的对象作为数组

时间:2016-12-20 12:26:14

标签: php mysql laravel

我正在使用Laravel 5.0。 在我的桌子上有一个注册表,所有条件。

我的模特功能:

public static function getParcelas($id){
    return DB::table('academia_matricula_parcelas')
    ->select('academia_matricula_parcelas.data_validade')
    ->where('academia_matricula_id', '=', $id)
    ->where('data_validade', '<>', "0000-00-00")
    ->orderBy('id', 'desc')
    ->first();
}

获得结果:

$parcelas = App\academia_matricula_parcelas::getParcelas($item->id);

我的var_dump($parcelas)

{#504 ▼
    +"data_validade": "1970-03-01"
}

当我尝试在我的视图中显示$parcelas->data_validade时,会出现以下错误:

  

不能使用stdClass类型的对象作为数组

2 个答案:

答案 0 :(得分:0)

将您的代码更改为此

public static function getParcelas($id){
    \DB::setFetchMode(\PDO::FETCH_ASSOC);
    return \DB::table('academia_matricula_parcelas')
    ->select('academia_matricula_parcelas.data_validade')
    ->where('academia_matricula_id', '=', $id)
    ->where('data_validade', '<>', "0000-00-00")
    ->orderBy('id', 'desc')
    ->first();
}

并尝试调试此$ parcelas ['data_validade'];

答案 1 :(得分:0)

我认为你需要写$ parcelas ['data_validade']。这有帮助!