简体   繁体   English

无法将stdClass类型的对象用作laravel上的数组

[英]Cannot use object of type stdClass as array on laravel

I'm using Laravel 5.0. 我正在使用Laravel 5.0。 I'm getting one register on my table, with all conditions. 在所有条件下,我的桌子上都有一个寄存器。

My function of model: 我的模型功能:

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();
}

Getting the result: 得到结果:

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

My var_dump($parcelas) : 我的var_dump($parcelas)

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

When I try to show $parcelas->data_validade in my view, occurs the follow error: 当我尝试在视图中显示$parcelas->data_validade时,发生以下错误:

Cannot use object of type stdClass as array 无法将类型为stdClass的对象用作数组

Change your code to this, 将您的代码更改为此,

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();
}

and try to debug this $parcelas['data_validade']; 并尝试调试$ parcelas ['data_validade'];

I think you need to write $parcelas['data_validade']. 我认为您需要编写$ parcelas ['data_validade']。 does this help! 这有帮助吗!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM