8

How do I split string and display it in a table in Laravel Framework? I fetch data from my database that consists of one column but in a string such as { 1234, normal, r4r3r2 }. I want to split it into three different parts/values by commas and display it in a table of three columns.

For now, I only can display the data without splitting the them.

My HomeController:

public function index()
  {
    $test = Test::all();
    return view('home')->with('test', $test);
  }

My home.blade.php:

<ol>
   @foreach($test as $row)
     <li>{{ $row->data }}</li>
   @endforeach
</ol>
Toastrackenigma
  • 7,604
  • 4
  • 45
  • 55
Aidel Gerrardo
  • 107
  • 1
  • 1
  • 3

2 Answers2

14

First explode the $test variable to get Array,

<ol>
 @foreach(explode(',',$test) as $row)
  <li>{{ $row }}</li>
 @endforeach
</ol>

After explode using foreach single key we can access from the array. I hope it helps.

Ritesh Khatri
  • 1,253
  • 13
  • 29
5

You can explode you string in blade file like this

@foreach(explode(',', $row->data) as $fields) 
    <li>{{$fields}}</li>
@endforeach

And using of your model you can also done like this

class Test extends Model 
{
  public function getDataAttribute()
  {
    return explode(',', $this->data);
  }
}

it's return your data explode with comma separated array.

bipin patel
  • 2,061
  • 1
  • 13
  • 22