2016-11-05 6 views
1

Я работаю над веб-приложением, используя laravel 5.3, у меня есть одна проблема.Как пройти через этот массив в Laravel?

Я хочу пройти через этот массив.

То, что я попытался это:

Контроллер:

public function postSearch(Request $request) 
    { 

     $categoryid = $request->category_id; 
     $locationid = $request->location_id; 
     $category = Category::where('id', $categoryid)->first(); 
     $cities = Location::where('id', $locationid)->pluck('city'); 
     $cityname = $cities[0]; 

     $alllocations = []; 
     $ratecards = []; 
     $locations = []; 

     $father = []; 

     $i = 0; 
     $filteredlocations = $category->locations->where('city', $cityname)->all(); 
     foreach($filteredlocations as $location){ 

      $alllocations[$i] = $location->getaddetails; 
      $ratecards[$i] = $location->ratecard; 
      $i++; 
     } 

     $father[0] = $alllocations; 
     $father[1] = $ratecards; 

     return view('ads', compact('father')); 

    } 

Посмотреть здесь:

@foreach($father as $key => $f) 

        @foreach($f as $key => $arr) 

         @if (isset($arr->adName)) 
          <div class="post"> 

           {{Html::image($arr->path,'Ad Picture',array('class' => 'ad-image'))}} 
           <a href="{{ url('ads', $arr->location_id) }}"><h2 class="post-title">{{ $arr->adName }}</h2></a> 

           <p class="description">{{ $arr->description }} </p> 

           <div class="post-footer"> 
            <span class="categories"> 
             <ul class="cats"> 
              <li class="btn btn-default">Price : 
              {{ $f[$key]->monthly_rate }} 
              </li> 
              <li class="btn btn-default">Status: 
               @if($arr->status == 1) 
                <p>Active</p> 
               @else 
                <p>Not-Active</p> 
               @endif 
              </li> 
              <li><a href="{{ url('ads', $arr->location_id) }}" class="details-page">view details</a></li> 

             </ul> 
            </span> 
           </div> 

          </div> 
         @endif 
         @endforeach 

        @endforeach 

Проблема:

Хорошо, когда я пытаюсь получить {{ $f[$key]->monthly_rate }}, который является вторым массивом i.e Оценить Я ничего не получаю. Я хочу получить Rate Card массив и из этого массива mothly_rate, который является полем там.

Благодаря

PS:{{ $f[$key]->monthly_rate }} это возвращение бездельники в поле зрения.

ответ

0

Проблема в том, что $ f [$ key] - это массив из двух объектов. Это означает, что свойства Youre ищет внутри каждого из этих элементов, например:

$f[$key][0]->monthly_rate 
$f[$key][1]->monthly_rate 

Вы должны цикла эти объекты, чтобы получить их свойства значений.

+0

Я получаю эту ошибку сейчас: пытаюсь получить свойство не-объекта. – Alien

Смежные вопросы