Je reçois l'erreur suivante lorsque vous essayez d'afficher une vue en Laravel:Comment convertir objet de stdClass à tableau dans Laravel
« ne peut pas utiliser l'objet de type stdClass sous forme de tableau (Voir: C: \ xampp \ htdocs \ mysite \ ressources \ vues \ cms \ contactus.blade.php) ".
Mon contrôleur:
public function contactus(){
ContactUS::get_content(self::$data);
return view('cms.contactus', self::$data);
}
Mon modèle:
class ContactUS extends Model
{
public $table = 'contactus';
public $fillable = ['name','email','message'];
static public function get_content(&$data){
$sql = "SELECT cu.*,name,email,message FROM contactus cu "
. "ORDER BY cu.created_at DESC ";
$data['contactusd'] = DB::select($sql);
}
}
Mon point de vue:
@extends ('cms.cms_master')
@section('cms_content')
<div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
<h1 class="page-header">Contact us form information</h1>
@if($contactusd)
<br><br>
<table class="table table-bordered">
<thead>
<tr>
<th>Name</th>
<th>Email</th>
<th>Message</th>
</tr>
</thead>
@foreach($contactusd as $item)
<tr>
<td>{{ $item['name']}}</td>
<td>
<ul>
<li> Email: {{ $item['email']}}, Massage: {{$item['message'] }}</li>
@endforeach
</ul>
</td>
<td>{{ $item[created_at]}}</td>
</tr>
</table>
@else
<p style="font-size: 18px">No information...</p>
@endif
</div>
@endsection
Eh bien, vous pouvez l'utiliser comme un objet à la place ('$ item-> email'), ou le convertir en un tableau' @foreach ($ contactusd as (array) $ item) ' – aynber
Possible duplicate of [ Comment convertir un objet en tableau?] (Https://stackoverflow.com/questions/2476876/how-do-i-convert-an-object-to-an-array) – aynber
nah il demande laravel et cependant vous devriez préférer éloquent au lieu de Raw Queries. –