2015-12-07 33 views
7

Ben laravel framework için yeniyim. Dizgiyi patlatmak ve foreach döngüsünü çalıştırmak istiyorum. Burada benim kodudurlaravel blade şablonunda dizgi patlat

@if ($data->facing != "") 
@foreach($data->facings as $info) 
<option>{{$info}}</option> 
@endforeach 
@endif 

$data->facing="Hello,World"; nasıl "," kullanılarak $data->facing patlamaya varsayalım.

cevap

10

modelinin çeşit, ben

class MyModel extends Model 
{ 
    public function getFacingsAttribute() 
    { 
    return explode(',', $this->facings); 
    } 
} 

Ardından modeline bir erişimci eklemek öneririz olduğu

@if ($data->facings != "") 
    @foreach(explode(',', $data->facings) as $info) 
    <option>{{$info}}</option> 
    @endforeach 
@endif 

$data olursa, sadece basitçe, ancak bu mantık Denetleyiciniz/modelinden gelmelidir patlayabilir Orijinal örneğinize göre basitçe bir dizi olarak kullanabilirsiniz.

@foreach($data->facings as $info) 
2

kullanın böyle patlayabilir:

$new_array = array(); 
if($data->facing) { 
$new_array = explode(',',$data->facing); 
} 
@if (is_array($new_array) && count($new_array) > 0) 
@foreach($new_array as $info) 
<option>{{$info}}</option> 
@endforeach 
@endif 
0

Bıçakları @foreach direktif PHP'nin yerli foreach etrafında sarıcı geçerli:

@foreach(explode(',', $data->facings) as $info) 
    <option>{{ $info }}</option> 
@endforeach 
İlgili konular