codeigniterのsqlの返す行から多次元配列を作る方法。 $ resのすべての値を保持しているモデルから値を返しますか?mysqlから多次元配列を作る方法codeigniterを使って行を返す
これは私のモデルコードです。
function get_room_book_join($data) {
$this->db->join('room_overviews', 'rooms.room_id =
room_overviews.rom_id', 'left');
$q = $this->db->get_where('rooms', $data);
return $q->result_array();
}
私はこのタイプの配列を取得しています。このタイプは私を助けません。
Array(
[0] => Array(
[room_id] => 1
[room_no] => 101
[room_desc] => Double Bed Deluxe Non Air Conditioned
[status] => available
[category_id] => 1
[hotel_id] => 1
[tariff_type] => normal
[room_rate] => 1000
[persons] => 0
[date_start] => 0000-00-00
[date_end] => 0000-00-00
[overview_id] => 1
[rom_id] => 1
[hot_id] => 1
[cus_id] => 2
[bok_id] => 2
[dates] => 2017-04-12
)
[1] => Array
(
[room_id] => 1
[room_no] => 101
[room_desc] => Double Bed Deluxe Non Air Conditioned
[status] => available
[category_id] => 1
[hotel_id] => 1
[tariff_type] => normal
[room_rate] => 1000
[persons] => 0
[date_start] => 0000-00-00
[date_end] => 0000-00-00
[overview_id] => 2
[rom_id] => 1
[hot_id] => 1
[cus_id] => 2
[bok_id] => 2
[dates] => 2017-04-13
)
[2] => Array
(
[room_id] => 1
[room_no] => 101
[room_desc] => Double Bed Deluxe Non Air Conditioned
[status] => available
[category_id] => 1
[hotel_id] => 1
[tariff_type] => normal
[room_rate] => 1000
[persons] => 0
[date_start] => 0000-00-00
[date_end] => 0000-00-00
[overview_id] => 3
[rom_id] => 1
[hot_id] => 1
[cus_id] => 2
[bok_id] => 2
[dates] => 2017-04-14
)
[3] => Array
(
[room_id] => 1
[room_no] => 101
[room_desc] => Double Bed Deluxe Non Air Conditioned
[status] => available
[category_id] => 1
[hotel_id] => 1
[tariff_type] => normal
[room_rate] => 1000
[persons] => 0
[date_start] => 0000-00-00
[date_end] => 0000-00-00
[overview_id] => 4
[rom_id] => 1
[hot_id] => 1
[cus_id] => 2
[bok_id] => 2
[dates] => 2017-04-15
)
[4] => Array
(
[room_id] => 2
[room_no] => 102
[room_desc] => Double Bed Deluxe Non Air Conditioned Room
[status] => available
[category_id] => 1
[hotel_id] => 1
[tariff_type] => normal
[room_rate] => 1000
[persons] => 2
[date_start] => 0000-00-00
[date_end] => 0000-00-00
[overview_id] => 5
[rom_id] => 2
[hot_id] => 1
[cus_id] => 2
[bok_id] => 2
[dates] => 2017-04-12
)
[5] => Array
(
[room_id] => 2
[room_no] => 102
[room_desc] => Double Bed Deluxe Non Air Conditioned Room
[status] => available
[category_id] => 1
[hotel_id] => 1
[tariff_type] => normal
[room_rate] => 1000
[persons] => 2
[date_start] => 0000-00-00
[date_end] => 0000-00-00
[overview_id] => 6
[rom_id] => 2
[hot_id] => 1
[cus_id] => 2
[bok_id] => 2
[dates] => 2017-04-13
)
[6] => Array
(
[room_id] => 2
[room_no] => 102
[room_desc] => Double Bed Deluxe Non Air Conditioned Room
[status] => available
[category_id] => 1
[hotel_id] => 1
[tariff_type] => normal
[room_rate] => 1000
[persons] => 2
[date_start] => 0000-00-00
[date_end] => 0000-00-00
[overview_id] => 7
[rom_id] => 2
[hot_id] => 1
[cus_id] => 2
[bok_id] => 2
[dates] => 2017-04-14
)
[7] => Array
(
[room_id] => 2
[room_no] => 102
[room_desc] => Double Bed Deluxe Non Air Conditioned Room
[status] => available
[category_id] => 1
[hotel_id] => 1
[tariff_type] => normal
[room_rate] => 1000
[persons] => 2
[date_start] => 0000-00-00
[date_end] => 0000-00-00
[overview_id] => 8
[rom_id] => 2
[hot_id] => 1
[cus_id] => 2
[bok_id] => 2
[dates] => 2017-04-15
)
)
実際にこのタイプの配列が必要です。どうすればそれを作ることができますか? ['room_id']と['rom_id']の両方が等しい場合、[dates]がすべての日付を単一配列[dates]に保持すると、多次元配列が作成されます。
array(
[0]=>array(
[room_id]=>1
[dates]=>array(
[0]=>2014-04-12
[1]=>2014-04-13
[2]=>2014-04-14
[3]=>2014-04-15
)
)
[1]=>array(
[room_id]=>2
[dates]=>array(
[0]=>2014-04-12
[1]=>2014-04-13
[2]=>2014-04-14
[3]=>2014-04-15
)))
モデルコードに表示できますか? –
ちょっと待ってください。 – user8
が完了しました。 – user8