簡體   English   中英

預訂系統:根據訪客數量查找房間組合 - PHP

[英]Booking system: Find room combinations based on guest count - PHP

我正在准備預訂系統並解決具體問題。 我有以下數據結構(房間號/占用/價格):

$room[222][1] = 80;

$room[223][1] = 100; //Room ID 222, occupancy 1 guest, price €100
$room[223][2] = 200; //Room ID 222, occupancy 2 guest, price €200
$room[223][3] = 300; //...

$room[224][1] = 110;
$room[224][2] = 220;
$room[224][3] = 330;
...

我需要為指定數量的客人找到最好的(最低價格)房間組合。

例如: 4位客人是房間$ 222 [1]和房間$ room [223] [3]的最佳組合。 房間的總價格是380歐元。

你能幫助我嗎?

首先,我會把房間作為一個更具描述性的對象,所以這樣:第二,我不會像這樣存儲每個客戶的價格,而是關注容量並從那里開始

  $room = array();
  $room[222] = array(
    'capactiy' => '3',
    'price' => array(
      1 => '100', //Use a string, likely you'll have .99 or whatever
      2 => '200',
      3 => '300',
    ),
    'booked' => false,
  );

所以你有3個客戶進來:循環通過可用房間,如果人數少於容量然后冷卻,預訂,否則(比如容量為2)然后從需要房間的客戶數量中刪除2,然后再循環抓住隔壁房間

如果你想變得復雜,說他們想要彼此相鄰,取222 + 1房間,它可用嗎? 如果沒有223 + 1,它可用嗎? 是? 大! 預訂吧。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM