2016-01-22 49 views
0

我的數組($ response_array)是這樣的:如何從控制器傳遞數組變量來查看(Laravel 5)?

Array 
(
    [Auth] => Array 
     (
      [UserID] => test 
      [UserIP] => 123 
      [XmlVersion] => Testing Version 
     ) 

    [SearchAvailRequest] => Array 
     (
      [CountryCd] => ID 
      [CityCd] => JOG 
      [CheckIn] => 2016-01-08 
      [CheckOut] => 2016-01-09 
     ) 

    [SearchAvailResponse] => Array 
     (
      [Hotel] => Array 
       (
        [0] => Array 
         (
          [HotelNo] => 1 
          [HotelCode] => 321 
          [HotelName] => Test 1 Hotel 
          [RmGrade] => Deluxe 
          [RmGradeCode] => DLX 
         ) 

        [1] => Array 
         (
          [HotelNo] => 2 
          [HotelCode] => 212 
          [HotelName] => Test 2 & 1 Hotel 
          [RmGrade] => Deluxe 
          [RmGradeCode] => DLX 
         ) 

       ) 

     ) 

) 

我想給酒店數據查看

所以視圖顯示的數據是這樣的:

Hotel Name 
Check In 
Check Out 
City 

我嘗試像這個:

控制器:

... 
    return view('frontend.hotel.main_list_hotel',[ 
    'hotel' => $response_array['SearchAvailResponse']['Hotel'] 
]); 
    ... 

查看:

@foreach($hotel as $key=>$value) 
{{ $key }} 
{{ $value['HotelNo'] }}      
@endforeach 

我得到酒店沒有&酒店名稱

如何獲得簽入,簽出,城市和國家?

關於如何解決此問題的任何建議?

非常感謝您

回答

2

您可以通過SearchAvailRequest陣列,在你做的SearchAvailResponse陣列相同的方式:

... 
    return view('frontend.hotel.main_list_hotel',[ 
    'hotel' => $response_array['SearchAvailResponse']['Hotel'], 
    'city_info' => $response_array['SearchAvailRequest'] 
]); 
2

你可以做這樣的事情

return view('frontend.hotel.main_list_hotel', [ 
    'availability' => [ 
     'checkIn' => $response_array['SearchAvailRequest']['CheckIn'], 
     'checkOut' => $response_array['SearchAvailRequest']['CheckOut'], 
     'city' => $response_array['SearchAvailRequest']['CityCd'], 
     'country' => $response_array['SearchAvailRequest']['CountryCd'], 
     'hotels' => $response_array['SearchAvailResponse']['Hotel'], 
    ] 
]); 
+0

或更簡單:'request'=> $ response_array ['SearchAvailRequest']'並在需要時訪問視圖中的'request'項目'$ request ['CheckIn']' – oliverpool

0

爲什麼不嘗試使用Laravel方法with()

return view('frontend.hotel.main_list_hotel')->with(compact(response_array['SearchAvailResponse']['Hotel'])); 

所有的數據都是發送給瀏覽,你可以使用:

{{ $response_array['SearchAvailResponse']['Hotel'] }}

在刀片模板。

+0

'with'方法是相同的作爲view()的第二個參數 – PeterPan666

相關問題