Jayanthkumar's avatar

show array count in blade

Hi i am getting values in below mentioned format with the coloumn name device_id from invoice table

[377,379,314,306,380,317,378,367,381,369,366,382,384,383,387]
[303,318,311]
[319] 

i need to sow the count in front end insteard of showing all id i.e

15 3 1

controller code

   public function show()
    {

        $cust = DB::table('invoice')->join('customer', 'invoice.customer_id', '=', 'customer.id')->join('cities', 'customer.cities_id', '=', 'cities.id')->join('states', 'cities.state_id', '=', 'states.id')->join('districts', 'customer.districts_id', '=', 'districts.id')->select('invoice.*', 'customer.customer_name','customer.phone','customer.street','customer.locality','customer.PIN_code','customer.email','states.state','cities.city','districts.district')->get();

        return view('pages.viewinvoice', ['custom' => $cust]);    
    }

invoice table itself is having device_id coloumn 

blade.php code

                   @foreach($custom as $cust )
                        
                       <tr>
                   
                        
                      
                        <td>{{ $cust->device_id }}</td>

                        {{--<td><a href="{{ url('invoice') }}">Show invoice</a></td>--}}
                        <td><a href="<?php echo 'invoice/' .$cust-> id  ?>">print invoice</a></td>
                        
                      
                        </tr>
                        @endforeach 

output is 
[377,379,314,306,380,317,378,367,381,369,366,382,384,383,387]
[303,318,311]
[319] 

i need 
15
3
1

if i use

<td>{{ count($cust->device_id) }}</td>

i am getting
1
1
1
0 likes
1 reply
Jayanthkumar's avatar
Jayanthkumar
OP
Best Answer
Level 1
{{ count(explode(",",$cust->device_id)) }}
1 like

Please or to participate in this conversation.