3v4l.org

run code in 500+ PHP versions simultaneously
<?php error_reporting(-1); class Room { private $number; private $countOfGuests; private $price; private $arrivalDate; private $dateOfDeparture; private $guests = array("firstName" => array(), "lastName" => array()); private $isFree = TRUE; public function __construct(int $number, int $countOfGuests, int $price, DateTime $arrivalDate, DateTime $dateOfDeparture) { $this->number = $number; $this->price = $price; $this->countOfGuests = $countOfGuests; $this->arrivalDate = $arrivalDate; $this->dateOfDeparture = $dateOfDeparture; } public function getIsFree(): bool { return $this->isFree; } public function changeIsFtee():void { if ($this->isFree == TRUE){ $this->isFree = FALSE; } else { $this->isFree = TRUE; } } public function getArrivalDate(): DateTime { return $this->arrivalDate; } public function getDateOfDeparture(): DateTime { return $this->dateOfDeparture; } public function addGuestToRoom($firstName, $lastName): void { $this->guests["firstName"][] = $firstName; $this->guests["lastName"][] = $lastName; } public function getPrice(): int { return $this->price; } public function getCountOfGuests(): int { return $this->countOfGuests; } public function getGuests(): array { return $this->guests; } public function getNumber(): int { return $this->number; } public function setDate(Hotel $hotel, DateTime $arrivalDate, DateTime $dateOfDeparture): void { $this->arrivalDate = $arrivalDate; $this->dateOfDeparture = $dateOfDeparture; } } class Hotel { private $rooms = array(); private $guests = array(); private $receipts = array("date" => array(), "money" => array()); public function addRoomForHotel(int $countOfGuests, int $price): void { $this->rooms[] = new Room(count($this->rooms) + 1, $countOfGuests, $price, new DateTime(), new DateTime()); } public function addGuest(string $firstName, string $lastName): void { $this->guests[] = new Guest($firstName, $lastName); } public function getRooms(): array { return $this->rooms; } public function getRoom(int $numberOfRoom): Room { return $this->rooms[$numberOfRoom - 1]; } public function getGuest(string $firstName, string $lastName): Guest { foreach ($this->guests as $guest) { if ($guest->getFirstName() == $firstName && $guest->getLastName() == $lastName){ return $guest; break; } } if (1){ throw new Exception("Неправильно введены данные клиента"); } } public function getReceipts(): array { return $this->receipts; } public function addDateOfReceipts(DateTime $date): void { $this->receipts["date"][] = $date; } public function addMoneyOfReceipts(int $money): void { $this->receipts["money"][] = $money; } public function replenishMoney(int $money, int $numberInArray): void { $this->receipts["money"][$numberInArray] += $money; } } class Guest { private $firstName; private $lastName; private $visitedRooms = array(); public function __construct(string $firstName, string $lastName) { $this->firstName = $firstName; $this->lastName = $lastName; } public function addVisitedRoom(int $numberOfRoom): void { $this->visitedRooms[] = $numberOfRoom; } public function getFirstName(): string { return $this->firstName; } public function getLastName(): string { return $this->lastName; } public function getVisitedRooms(): array { return $this->visitedRooms; } } class Registration { public function getStatisticOfReceipts(Hotel $hotel, DateTime $startDate, DateTime $endDate): void { echo "Дата Сумма\n"; foreach ($hotel->getReceipts()["date"] as $key => $date) { if($date == $startDate || $date > $startDate){ for($i = $key; $hotel->getReceipts()["date"][$i] != $endDate; $i++){ echo $hotel->getReceipts()["date"][$i]->format('Y-m-d'), " ", $hotel->getReceipts()["money"][$i], "\n"; if($hotel->getReceipts()["date"][$i] == end($hotel->getReceipts()["date"])){ break; } } } break; } } public function registerGuests(Hotel $hotel, int $numberOfRoom, string $firstName, string $lastName, DateTime $arrivalDate, DateTime $dateOfDeparture): void { $hotel->getRoom($numberOfRoom)->setDate($hotel, $arrivalDate, $dateOfDeparture); $hotel->getRoom($numberOfRoom)->addGuestToRoom($firstName, $lastName); $hotel->getRoom($numberOfRoom)->changeIsFtee(); $hotel->getGuest($firstName, $lastName)->addVisitedRoom($numberOfRoom); $this->addReceiptsForHotel($hotel, $numberOfRoom, $arrivalDate); } public function selectRoom(Hotel $hotel, DateTime $arrivalDate, DateTime $dateOfDeparture, int $countOfGuests): void { $availableRoom = $this->searchRooms($hotel, $dateOfDeparture, $arrivalDate); $roomsForList = array(); while ($countOfGuests > 0) { $maxCountOfGuestInRoom = $availableRoom[0]->getCountOfGuests(); foreach ($availableRoom as $room) { if ($room->getCountOfGuests() > $maxCountOfGuestInRoom && $room->getCountOfGuests() <= $countOfGuests){ $maxCountOfGuestInRoom = $room->getCountOfGuests(); } } $roomsForList[] = $this->SearchSuitableRoom($hotel, $arrivalDate, $dateOfDeparture, $maxCountOfGuestInRoom); end($roomsForList)->changeIsFtee(); $countOfGuests -= $maxCountOfGuestInRoom; } $this->printInformationOfRooms($roomsForList); foreach ($roomsForList as $room) { $room->changeIsFtee(); } } public function getFreeRoomsInRange(Hotel $hotel, DateTime $arrivalDate, DateTime $dateOfDeparture):void { $this->printInformationOfRooms($this->searchRooms($hotel, $dateOfDeparture, $arrivalDate)); } public function getFreeRooms(Hotel $hotel, DateTime $date): void { $this->printInformationOfRooms($this->searchRooms($hotel, $date, $date)); } private function searchRooms(Hotel $hotel, DateTime $date1, DateTime $date2) { $freeRooms = array(); foreach ($hotel->getRooms() as $room) { if ($room->getIsFree() && ($room->getArrivalDate() > $date1 || $room->getDateOfDeparture() < $date2)){ $freeRooms[] = $room; } } return $freeRooms; } private function SearchSuitableRoom(Hotel $hotel, DateTime $arrivalDate, DateTime $dateOfDeparture, int $countOfGuests): Room { $availableRoom = $this->searchRooms($hotel, $dateOfDeparture, $arrivalDate); foreach ($availableRoom as $number => $room) { if ($room->getCountOfGuests() < $countOfGuests){ unset($availableRoom[$number]); } } sort($availableRoom); if (count($availableRoom) == 0){ throw new Exception("Нет подходящих номеров"); } $minPrice = $availableRoom[0]->getPrice(); foreach ($availableRoom as $number => $room) { if ($room->getPrice() < $minPrice){ $minPrice = $room->getPrice(); for ($i = 0; $i < $number; $i++){ unset($availableRoom[$i]); } } elseif ($room->getPrice() > $minPrice){ unset($availableRoom[$number]); } } sort($availableRoom); $minGuests = $availableRoom[0]->getCountOfGuests(); foreach ($availableRoom as $number => $room) { if ($room->getCountOfGuests() < $minGuests){ $minGuests = $room->getCountOfGuests(); for ($i = 0; $i < $number; $i++){ unset($availableRoom[$i]); } } elseif ($room->getCountOfGuests() > $minGuests){ unset($availableRoom[$number]); } } sort($availableRoom); return $availableRoom[0]; } public function printHistoryOfGuest(Hotel $hotel, string $firstName, string $lastName): void { echo "\n$firstName $lastName История\n"; $rooms = $hotel->getGuest($firstName, $lastName)->getVisitedRooms(); foreach ($rooms as &$room) { $room = $hotel->getRoom($room); } $this->printInformationOfRooms($rooms); } public function printHistoryOfRoom(Hotel $hotel, int $numberOfRoom): void { echo "\nИстория комнаты № $numberOfRoom\n\n"; echo "Имя Фамилия\n"; $guests = $hotel->getRoom($numberOfRoom)->getGuests(); for($i = 0; $i < count($guests["firstName"]); $i++){ echo $this->padLeft($guests["firstName"][$i], 10) . $this->padLeft($guests["lastName"][$i], 10) . "\n"; } } private function printInformationOfRooms(array $rooms): void { echo "\nНомер вместимость стоимость\n"; foreach($rooms as $room){ $this->printRoomsRow($room->getNumber(), $room->getCountOfGuests(), $room->getPrice()); } } private function padLeft($value, int $columnLength): void { echo $value; echo str_repeat(" ", $columnLength - mb_strlen($value)); } private function printRoomsRow(int $numberOfRoom, int $countOfGuests, int $price): void { $col1 = 6; $col2 = 12; $col3 = 20; echo $this->padLeft($numberOfRoom, $col1) . $this->padLeft($countOfGuests, $col2) . $this->padLeft($price, $col3) . "\n"; } private function addReceiptsForHotel(Hotel $hotel, int $numberOfRoom, DateTime $arrivalDate): void { foreach ($hotel->getReceipts()["date"] as $key => $date) { if ($arrivalDate == $date){ $hotel->replenishMoney($hotel->getRoom($numberOfRoom)->getPrice(), $key); return; } } $hotel->addDateOfReceipts($arrivalDate); $hotel->addMoneyOfReceipts($hotel->getRoom($numberOfRoom)->getPrice()); } } $hotel = new Hotel; $hotel->addRoomForHotel(1, 500); $hotel->addRoomForHotel(3, 700); $hotel->addRoomForHotel(2, 1500); $hotel->addRoomForHotel(2, 1500); $hotel->addRoomForHotel(3, 1500); $hotel->addGuest("Ivan", "Ivanov"); $hotel->addGuest("Petr", "Petrov"); $registration = new Registration; $registration->registerGuests($hotel, 3, "Ivan", "Ivanov", new DateTime('2015-05-10'), new DateTime('2015-05-22')); $registration->registerGuests($hotel, 1, "Petr", "Petrov", new DateTime('2015-05-10'), new DateTime('2015-05-12')); $registration->registerGuests($hotel, 4, "Ivan", "Ivanov", new DateTime('2015-05-27'), new DateTime('2015-06-03')); $registration->registerGuests($hotel, 3, "Petr", "Petrov", new DateTime('2015-07-13'), new DateTime('2015-07-15')); // $registration->getFreeRooms($hotel, new DateTime('2015-05-12')); // $registration->getFreeRoomsInRange($hotel, new DateTime('2015-05-13'), new DateTime('2015-05-25')); // $registration->selectRoom($hotel, new DateTime('2015-05-12'), new DateTime('2015-05-25'), 4); // $registration->printHistoryOfGuest($hotel, "Ivan", "Ivanov"); // $registration->printHistoryOfRoom($hotel, 3); // $registration->getStatisticOfReceipts($hotel, new DateTime('2015-05-05'), new DateTime('2015-07-25'));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  (null)
number of ops:  94
compiled vars:  !0 = $hotel, !1 = $registration
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                                   'error_reporting'
          1        SEND_VAL                                                     -1
          2        DO_ICALL                                                     
  363     3        NEW                                                  $3      'Hotel'
          4        DO_FCALL                                          0          
          5        ASSIGN                                                       !0, $3
  365     6        INIT_METHOD_CALL                                             !0, 'addRoomForHotel'
          7        SEND_VAL_EX                                                  1
          8        SEND_VAL_EX                                                  500
          9        DO_FCALL                                          0          
  366    10        INIT_METHOD_CALL                                             !0, 'addRoomForHotel'
         11        SEND_VAL_EX                                                  3
         12        SEND_VAL_EX                                                  700
         13        DO_FCALL                                          0          
  367    14        INIT_METHOD_CALL                                             !0, 'addRoomForHotel'
         15        SEND_VAL_EX                                                  2
         16        SEND_VAL_EX                                                  1500
         17        DO_FCALL                                          0          
  368    18        INIT_METHOD_CALL                                             !0, 'addRoomForHotel'
         19        SEND_VAL_EX                                                  2
         20        SEND_VAL_EX                                                  1500
         21        DO_FCALL                                          0          
  369    22        INIT_METHOD_CALL                                             !0, 'addRoomForHotel'
         23        SEND_VAL_EX                                                  3
         24        SEND_VAL_EX                                                  1500
         25        DO_FCALL                                          0          
  371    26        INIT_METHOD_CALL                                             !0, 'addGuest'
         27        SEND_VAL_EX                                                  'Ivan'
         28        SEND_VAL_EX                                                  'Ivanov'
         29        DO_FCALL                                          0          
  372    30        INIT_METHOD_CALL                                             !0, 'addGuest'
         31        SEND_VAL_EX                                                  'Petr'
         32        SEND_VAL_EX                                                  'Petrov'
         33        DO_FCALL                                          0          
  374    34        NEW                                                  $13     'Registration'
         35        DO_FCALL                                          0          
         36        ASSIGN                                                       !1, $13
  376    37        INIT_METHOD_CALL                                             !1, 'registerGuests'
         38        SEND_VAR_EX                                                  !0
         39        SEND_VAL_EX                                                  3
         40        SEND_VAL_EX                                                  'Ivan'
         41        SEND_VAL_EX                                                  'Ivanov'
         42        NEW                                                  $16     'DateTime'
         43        SEND_VAL_EX                                                  '2015-05-10'
         44        DO_FCALL                                          0          
         45        SEND_VAR_NO_REF_EX                                           $16
         46        NEW                                                  $18     'DateTime'
         47        SEND_VAL_EX                                                  '2015-05-22'
         48        DO_FCALL                                          0          
         49        SEND_VAR_NO_REF_EX                                           $18
         50        DO_FCALL                                          0          
  377    51        INIT_METHOD_CALL                                             !1, 'registerGuests'
         52        SEND_VAR_EX                                                  !0
         53        SEND_VAL_EX                                                  1
         54        SEND_VAL_EX                                                  'Petr'
         55        SEND_VAL_EX                                                  'Petrov'
         56        NEW                                                  $21     'DateTime'
         57        SEND_VAL_EX                                                  '2015-05-10'
         58        DO_FCALL                                          0          
         59        SEND_VAR_NO_REF_EX                                           $21
         60        NEW                                                  $23     'DateTime'
         61        SEND_VAL_EX                                                  '2015-05-12'
         62        DO_FCALL                                          0          
         63        SEND_VAR_NO_REF_EX                                           $23
         64        DO_FCALL                                          0          
  378    65        INIT_METHOD_CALL                                             !1, 'registerGuests'
         66        SEND_VAR_EX                                                  !0
         67        SEND_VAL_EX                                                  4
         68        SEND_VAL_EX                                                  'Ivan'
         69        SEND_VAL_EX                                                  'Ivanov'
         70        NEW                                                  $26     'DateTime'
         71        SEND_VAL_EX                                                  '2015-05-27'
         72        DO_FCALL                                          0          
         73        SEND_VAR_NO_REF_EX                                           $26
         74        NEW                                                  $28     'DateTime'
         75        SEND_VAL_EX                                                  '2015-06-03'
         76        DO_FCALL                                          0          
         77        SEND_VAR_NO_REF_EX                                           $28
         78        DO_FCALL                                          0          
  379    79        INIT_METHOD_CALL                                             !1, 'registerGuests'
         80        SEND_VAR_EX                                                  !0
         81        SEND_VAL_EX                                                  3
         82        SEND_VAL_EX                                                  'Petr'
         83        SEND_VAL_EX                                                  'Petrov'
         84        NEW                                                  $31     'DateTime'
         85        SEND_VAL_EX                                                  '2015-07-13'
         86        DO_FCALL                                          0          
         87        SEND_VAR_NO_REF_EX                                           $31
         88        NEW                                                  $33     'DateTime'
         89        SEND_VAL_EX                                                  '2015-07-15'
         90        DO_FCALL                                          0          
         91        SEND_VAR_NO_REF_EX                                           $33
         92        DO_FCALL                                          0          
  386    93      > RETURN                                                       1

Class Room:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  __construct
number of ops:  16
compiled vars:  !0 = $number, !1 = $countOfGuests, !2 = $price, !3 = $arrivalDate, !4 = $dateOfDeparture
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   15     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
          3        RECV                                                 !3      
          4        RECV                                                 !4      
   17     5        ASSIGN_OBJ                                                   'number'
          6        OP_DATA                                                      !0
   18     7        ASSIGN_OBJ                                                   'price'
          8        OP_DATA                                                      !2
   19     9        ASSIGN_OBJ                                                   'countOfGuests'
         10        OP_DATA                                                      !1
   20    11        ASSIGN_OBJ                                                   'arrivalDate'
         12        OP_DATA                                                      !3
   21    13        ASSIGN_OBJ                                                   'dateOfDeparture'
         14        OP_DATA                                                      !4
   22    15      > RETURN                                                       null

End of function __construct

Function getisfree:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getIsFree
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   26     0  E >   FETCH_OBJ_R                                          ~0      'isFree'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
   27     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getisfree

Function changeisftee:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 3, Position 2 = 6
Branch analysis from position: 3
1 jumps found. (Code = 42) Position 1 = 8
Branch analysis from position: 8
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 6
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  changeIsFtee
number of ops:  9
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   31     0  E >   FETCH_OBJ_R                                          ~0      'isFree'
          1        IS_EQUAL                                                     ~0, <true>
          2      > JMPZ                                                         ~1, ->6
   32     3    >   ASSIGN_OBJ                                                   'isFree'
          4        OP_DATA                                                      <false>
   31     5      > JMP                                                          ->8
   34     6    >   ASSIGN_OBJ                                                   'isFree'
          7        OP_DATA                                                      <true>
   36     8    > > RETURN                                                       null

End of function changeisftee

Function getarrivaldate:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getArrivalDate
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   40     0  E >   FETCH_OBJ_R                                          ~0      'arrivalDate'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
   41     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getarrivaldate

Function getdateofdeparture:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getDateOfDeparture
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   45     0  E >   FETCH_OBJ_R                                          ~0      'dateOfDeparture'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
   46     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getdateofdeparture

Function addguesttoroom:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  addGuestToRoom
number of ops:  11
compiled vars:  !0 = $firstName, !1 = $lastName
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   48     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
   50     2        FETCH_OBJ_W                                          $2      'guests'
          3        FETCH_DIM_W                                          $3      $2, 'firstName'
          4        ASSIGN_DIM                                                   $3
          5        OP_DATA                                                      !0
   51     6        FETCH_OBJ_W                                          $5      'guests'
          7        FETCH_DIM_W                                          $6      $5, 'lastName'
          8        ASSIGN_DIM                                                   $6
          9        OP_DATA                                                      !1
   52    10      > RETURN                                                       null

End of function addguesttoroom

Function getprice:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getPrice
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   56     0  E >   FETCH_OBJ_R                                          ~0      'price'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
   57     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getprice

Function getcountofguests:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getCountOfGuests
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   61     0  E >   FETCH_OBJ_R                                          ~0      'countOfGuests'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
   62     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getcountofguests

Function getguests:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getGuests
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   66     0  E >   FETCH_OBJ_R                                          ~0      'guests'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
   67     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getguests

Function getnumber:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getNumber
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   71     0  E >   FETCH_OBJ_R                                          ~0      'number'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
   72     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getnumber

Function setdate:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  setDate
number of ops:  8
compiled vars:  !0 = $hotel, !1 = $arrivalDate, !2 = $dateOfDeparture
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   74     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
   76     3        ASSIGN_OBJ                                                   'arrivalDate'
          4        OP_DATA                                                      !1
   77     5        ASSIGN_OBJ                                                   'dateOfDeparture'
          6        OP_DATA                                                      !2
   78     7      > RETURN                                                       null

End of function setdate

End of class Room.

Class Hotel:
Function addroomforhotel:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  addRoomForHotel
number of ops:  20
compiled vars:  !0 = $countOfGuests, !1 = $price
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   87     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
   89     2        NEW                                                  $4      'Room'
          3        FETCH_OBJ_R                                          ~5      'rooms'
          4        COUNT                                                ~6      ~5
          5        ADD                                                  ~7      ~6, 1
          6        SEND_VAL_EX                                                  ~7
          7        SEND_VAR_EX                                                  !0
          8        SEND_VAR_EX                                                  !1
          9        NEW                                                  $8      'DateTime'
         10        DO_FCALL                                          0          
         11        SEND_VAR_NO_REF_EX                                           $8
         12        NEW                                                  $10     'DateTime'
         13        DO_FCALL                                          0          
         14        SEND_VAR_NO_REF_EX                                           $10
         15        DO_FCALL                                          0          
         16        FETCH_OBJ_W                                          $2      'rooms'
         17        ASSIGN_DIM                                                   $2
         18        OP_DATA                                                      $4
   90    19      > RETURN                                                       null

End of function addroomforhotel

Function addguest:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  addGuest
number of ops:  10
compiled vars:  !0 = $firstName, !1 = $lastName
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   92     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
   94     2        NEW                                                  $4      'Guest'
          3        SEND_VAR_EX                                                  !0
          4        SEND_VAR_EX                                                  !1
          5        DO_FCALL                                          0          
          6        FETCH_OBJ_W                                          $2      'guests'
          7        ASSIGN_DIM                                                   $2
          8        OP_DATA                                                      $4
   95     9      > RETURN                                                       null

End of function addguest

Function getrooms:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getRooms
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   99     0  E >   FETCH_OBJ_R                                          ~0      'rooms'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
  100     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getrooms

Function getroom:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getRoom
number of ops:  8
compiled vars:  !0 = $numberOfRoom
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  102     0  E >   RECV                                                 !0      
  104     1        SUB                                                  ~2      !0, 1
          2        FETCH_OBJ_R                                          ~1      'rooms'
          3        FETCH_DIM_R                                          ~3      ~1, ~2
          4        VERIFY_RETURN_TYPE                                           ~3
          5      > RETURN                                                       ~3
  105     6*       VERIFY_RETURN_TYPE                                           
          7*     > RETURN                                                       null

End of function getroom

Function getguest:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 4, Position 2 = 19
Branch analysis from position: 4
2 jumps found. (Code = 78) Position 1 = 5, Position 2 = 19
Branch analysis from position: 5
2 jumps found. (Code = 46) Position 1 = 9, Position 2 = 13
Branch analysis from position: 9
2 jumps found. (Code = 43) Position 1 = 14, Position 2 = 18
Branch analysis from position: 14
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 18
1 jumps found. (Code = 42) Position 1 = 4
Branch analysis from position: 4
Branch analysis from position: 13
Branch analysis from position: 19
2 jumps found. (Code = 43) Position 1 = 21, Position 2 = 25
Branch analysis from position: 21
1 jumps found. (Code = 108) Position 1 = -2
Branch analysis from position: 25
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 19
filename:       /in/ULIPK
function name:  getGuest
number of ops:  27
compiled vars:  !0 = $firstName, !1 = $lastName, !2 = $guest
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  107     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
  109     2        FETCH_OBJ_R                                          ~3      'guests'
          3      > FE_RESET_R                                           $4      ~3, ->19
          4    > > FE_FETCH_R                                                   $4, !2, ->19
  110     5    >   INIT_METHOD_CALL                                             !2, 'getFirstName'
          6        DO_FCALL                                          0  $5      
          7        IS_EQUAL                                             ~6      !0, $5
          8      > JMPZ_EX                                              ~6      ~6, ->13
          9    >   INIT_METHOD_CALL                                             !2, 'getLastName'
         10        DO_FCALL                                          0  $7      
         11        IS_EQUAL                                             ~8      !1, $7
         12        BOOL                                                 ~6      ~8
         13    > > JMPZ                                                         ~6, ->18
  111    14    >   VERIFY_RETURN_TYPE                                           !2
         15        FE_FREE                                                      $4
         16      > RETURN                                                       !2
  112    17*       JMP                                                          ->19
  109    18    > > JMP                                                          ->4
         19    >   FE_FREE                                                      $4
  115    20      > JMPZ                                                         1, ->25
  116    21    >   NEW                                                  $9      'Exception'
         22        SEND_VAL_EX                                                  '%D0%9D%D0%B5%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE+%D0%B2%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D1%8B+%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5+%D0%BA%D0%BB%D0%B8%D0%B5%D0%BD%D1%82%D0%B0'
         23        DO_FCALL                                          0          
         24      > THROW                                             0          $9
  118    25    >   VERIFY_RETURN_TYPE                                           
         26      > RETURN                                                       null

End of function getguest

Function getreceipts:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getReceipts
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  122     0  E >   FETCH_OBJ_R                                          ~0      'receipts'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
  123     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getreceipts

Function adddateofreceipts:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  addDateOfReceipts
number of ops:  6
compiled vars:  !0 = $date
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  125     0  E >   RECV                                                 !0      
  127     1        FETCH_OBJ_W                                          $1      'receipts'
          2        FETCH_DIM_W                                          $2      $1, 'date'
          3        ASSIGN_DIM                                                   $2
          4        OP_DATA                                                      !0
  128     5      > RETURN                                                       null

End of function adddateofreceipts

Function addmoneyofreceipts:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  addMoneyOfReceipts
number of ops:  6
compiled vars:  !0 = $money
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  130     0  E >   RECV                                                 !0      
  132     1        FETCH_OBJ_W                                          $1      'receipts'
          2        FETCH_DIM_W                                          $2      $1, 'money'
          3        ASSIGN_DIM                                                   $2
          4        OP_DATA                                                      !0
  133     5      > RETURN                                                       null

End of function addmoneyofreceipts

Function replenishmoney:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  replenishMoney
number of ops:  7
compiled vars:  !0 = $money, !1 = $numberInArray
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  135     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
  137     2        FETCH_OBJ_RW                                         $2      'receipts'
          3        FETCH_DIM_RW                                         $3      $2, 'money'
          4        ASSIGN_DIM_OP                    +=               1          $3, !1
          5        OP_DATA                                                      !0
  138     6      > RETURN                                                       null

End of function replenishmoney

End of class Hotel.

Class Guest:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  __construct
number of ops:  7
compiled vars:  !0 = $firstName, !1 = $lastName
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  147     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
  149     2        ASSIGN_OBJ                                                   'firstName'
          3        OP_DATA                                                      !0
  150     4        ASSIGN_OBJ                                                   'lastName'
          5        OP_DATA                                                      !1
  151     6      > RETURN                                                       null

End of function __construct

Function addvisitedroom:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  addVisitedRoom
number of ops:  5
compiled vars:  !0 = $numberOfRoom
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  153     0  E >   RECV                                                 !0      
  155     1        FETCH_OBJ_W                                          $1      'visitedRooms'
          2        ASSIGN_DIM                                                   $1
          3        OP_DATA                                                      !0
  156     4      > RETURN                                                       null

End of function addvisitedroom

Function getfirstname:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getFirstName
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  160     0  E >   FETCH_OBJ_R                                          ~0      'firstName'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
  161     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getfirstname

Function getlastname:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getLastName
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  165     0  E >   FETCH_OBJ_R                                          ~0      'lastName'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
  166     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getlastname

Function getvisitedrooms:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getVisitedRooms
number of ops:  5
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  170     0  E >   FETCH_OBJ_R                                          ~0      'visitedRooms'
          1        VERIFY_RETURN_TYPE                                           ~0
          2      > RETURN                                                       ~0
  171     3*       VERIFY_RETURN_TYPE                                           
          4*     > RETURN                                                       null

End of function getvisitedrooms

End of class Guest.

Class Registration:
Function getstatisticofreceipts:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 8, Position 2 = 55
Branch analysis from position: 8
2 jumps found. (Code = 78) Position 1 = 9, Position 2 = 55
Branch analysis from position: 9
2 jumps found. (Code = 47) Position 1 = 12, Position 2 = 14
Branch analysis from position: 12
2 jumps found. (Code = 43) Position 1 = 15, Position 2 = 53
Branch analysis from position: 15
1 jumps found. (Code = 42) Position 1 = 47
Branch analysis from position: 47
2 jumps found. (Code = 44) Position 1 = 53, Position 2 = 17
Branch analysis from position: 53
1 jumps found. (Code = 42) Position 1 = 55
Branch analysis from position: 55
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 17
2 jumps found. (Code = 43) Position 1 = 45, Position 2 = 46
Branch analysis from position: 45
1 jumps found. (Code = 42) Position 1 = 53
Branch analysis from position: 53
Branch analysis from position: 46
2 jumps found. (Code = 44) Position 1 = 53, Position 2 = 17
Branch analysis from position: 53
Branch analysis from position: 17
Branch analysis from position: 53
Branch analysis from position: 14
Branch analysis from position: 55
Branch analysis from position: 55
filename:       /in/ULIPK
function name:  getStatisticOfReceipts
number of ops:  57
compiled vars:  !0 = $hotel, !1 = $startDate, !2 = $endDate, !3 = $date, !4 = $key, !5 = $i
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  176     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
  178     3        ECHO                                                         '%D0%94%D0%B0%D1%82%D0%B0+++++++%D0%A1%D1%83%D0%BC%D0%BC%D0%B0%0A'
  180     4        INIT_METHOD_CALL                                             !0, 'getReceipts'
          5        DO_FCALL                                          0  $6      
          6        FETCH_DIM_R                                          ~7      $6, 'date'
          7      > FE_RESET_R                                           $8      ~7, ->55
          8    > > FE_FETCH_R                                           ~9      $8, !3, ->55
          9    >   ASSIGN                                                       !4, ~9
  181    10        IS_EQUAL                                             ~11     !3, !1
         11      > JMPNZ_EX                                             ~11     ~11, ->14
         12    >   IS_SMALLER                                           ~12     !1, !3
         13        BOOL                                                 ~11     ~12
         14    > > JMPZ                                                         ~11, ->53
  182    15    >   ASSIGN                                                       !5, !4
         16      > JMP                                                          ->47
  183    17    >   INIT_METHOD_CALL                                             !0, 'getReceipts'
         18        DO_FCALL                                          0  $14     
         19        FETCH_DIM_R                                          ~15     $14, 'date'
         20        FETCH_DIM_R                                          ~16     ~15, !5
         21        INIT_METHOD_CALL                                             ~16, 'format'
         22        SEND_VAL_EX                                                  'Y-m-d'
         23        DO_FCALL                                          0  $17     
         24        ECHO                                                         $17
         25        ECHO                                                         '+'
         26        INIT_METHOD_CALL                                             !0, 'getReceipts'
         27        DO_FCALL                                          0  $18     
         28        FETCH_DIM_R                                          ~19     $18, 'money'
         29        FETCH_DIM_R                                          ~20     ~19, !5
         30        ECHO                                                         ~20
         31        ECHO                                                         '%0A'
  185    32        INIT_METHOD_CALL                                             !0, 'getReceipts'
         33        DO_FCALL                                          0  $21     
         34        FETCH_DIM_R                                          ~22     $21, 'date'
         35        FETCH_DIM_R                                          ~23     ~22, !5
         36        INIT_FCALL                                                   'end'
         37        INIT_METHOD_CALL                                             !0, 'getReceipts'
         38        DO_FCALL                                          0  $24     
         39        SEPARATE                                             $24     $24
         40        FETCH_DIM_W                                          $25     $24, 'date'
         41        SEND_REF                                                     $25
         42        DO_ICALL                                             $26     
         43        IS_EQUAL                                                     $26, ~23
         44      > JMPZ                                                         ~27, ->46
  186    45    > > JMP                                                          ->53
  182    46    >   PRE_INC                                                      !5
         47    >   INIT_METHOD_CALL                                             !0, 'getReceipts'
         48        DO_FCALL                                          0  $29     
         49        FETCH_DIM_R                                          ~30     $29, 'date'
         50        FETCH_DIM_R                                          ~31     ~30, !5
         51        IS_NOT_EQUAL                                                 !2, ~31
         52      > JMPNZ                                                        ~32, ->17
  190    53    > > JMP                                                          ->55
  180    54*       JMP                                                          ->8
         55    >   FE_FREE                                                      $8
  192    56      > RETURN                                                       null

End of function getstatisticofreceipts

Function registerguests:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  registerGuests
number of ops:  39
compiled vars:  !0 = $hotel, !1 = $numberOfRoom, !2 = $firstName, !3 = $lastName, !4 = $arrivalDate, !5 = $dateOfDeparture
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  194     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
          3        RECV                                                 !3      
          4        RECV                                                 !4      
          5        RECV                                                 !5      
  196     6        INIT_METHOD_CALL                                             !0, 'getRoom'
          7        SEND_VAR_EX                                                  !1
          8        DO_FCALL                                          0  $6      
          9        INIT_METHOD_CALL                                             $6, 'setDate'
         10        SEND_VAR_EX                                                  !0
         11        SEND_VAR_EX                                                  !4
         12        SEND_VAR_EX                                                  !5
         13        DO_FCALL                                          0          
  197    14        INIT_METHOD_CALL                                             !0, 'getRoom'
         15        SEND_VAR_EX                                                  !1
         16        DO_FCALL                                          0  $8      
         17        INIT_METHOD_CALL                                             $8, 'addGuestToRoom'
         18        SEND_VAR_EX                                                  !2
         19        SEND_VAR_EX                                                  !3
         20        DO_FCALL                                          0          
  198    21        INIT_METHOD_CALL                                             !0, 'getRoom'
         22        SEND_VAR_EX                                                  !1
         23        DO_FCALL                                          0  $10     
         24        INIT_METHOD_CALL                                             $10, 'changeIsFtee'
         25        DO_FCALL                                          0          
  199    26        INIT_METHOD_CALL                                             !0, 'getGuest'
         27        SEND_VAR_EX                                                  !2
         28        SEND_VAR_EX                                                  !3
         29        DO_FCALL                                          0  $12     
         30        INIT_METHOD_CALL                                             $12, 'addVisitedRoom'
         31        SEND_VAR_EX                                                  !1
         32        DO_FCALL                                          0          
  200    33        INIT_METHOD_CALL                                             'addReceiptsForHotel'
         34        SEND_VAR_EX                                                  !0
         35        SEND_VAR_EX                                                  !1
         36        SEND_VAR_EX                                                  !4
         37        DO_FCALL                                          0          
  201    38      > RETURN                                                       null

End of function registerguests

Function selectroom:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 46
Branch analysis from position: 46
2 jumps found. (Code = 44) Position 1 = 48, Position 2 = 12
Branch analysis from position: 48
2 jumps found. (Code = 77) Position 1 = 52, Position 2 = 56
Branch analysis from position: 52
2 jumps found. (Code = 78) Position 1 = 53, Position 2 = 56
Branch analysis from position: 53
1 jumps found. (Code = 42) Position 1 = 52
Branch analysis from position: 52
Branch analysis from position: 56
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 56
Branch analysis from position: 12
2 jumps found. (Code = 77) Position 1 = 17, Position 2 = 31
Branch analysis from position: 17
2 jumps found. (Code = 78) Position 1 = 18, Position 2 = 31
Branch analysis from position: 18
2 jumps found. (Code = 46) Position 1 = 22, Position 2 = 26
Branch analysis from position: 22
2 jumps found. (Code = 43) Position 1 = 27, Position 2 = 30
Branch analysis from position: 27
1 jumps found. (Code = 42) Position 1 = 17
Branch analysis from position: 17
Branch analysis from position: 30
Branch analysis from position: 26
Branch analysis from position: 31
2 jumps found. (Code = 44) Position 1 = 48, Position 2 = 12
Branch analysis from position: 48
Branch analysis from position: 12
Branch analysis from position: 31
filename:       /in/ULIPK
function name:  selectRoom
number of ops:  58
compiled vars:  !0 = $hotel, !1 = $arrivalDate, !2 = $dateOfDeparture, !3 = $countOfGuests, !4 = $availableRoom, !5 = $roomsForList, !6 = $maxCountOfGuestInRoom, !7 = $room
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  203     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
          3        RECV                                                 !3      
  205     4        INIT_METHOD_CALL                                             'searchRooms'
          5        SEND_VAR_EX                                                  !0
          6        SEND_VAR_EX                                                  !2
          7        SEND_VAR_EX                                                  !1
          8        DO_FCALL                                          0  $8      
          9        ASSIGN                                                       !4, $8
  206    10        ASSIGN                                                       !5, <array>
  208    11      > JMP                                                          ->46
  209    12    >   FETCH_DIM_R                                          ~11     !4, 0
         13        INIT_METHOD_CALL                                             ~11, 'getCountOfGuests'
         14        DO_FCALL                                          0  $12     
         15        ASSIGN                                                       !6, $12
  211    16      > FE_RESET_R                                           $14     !4, ->31
         17    > > FE_FETCH_R                                                   $14, !7, ->31
  212    18    >   INIT_METHOD_CALL                                             !7, 'getCountOfGuests'
         19        DO_FCALL                                          0  $15     
         20        IS_SMALLER                                           ~16     !6, $15
         21      > JMPZ_EX                                              ~16     ~16, ->26
         22    >   INIT_METHOD_CALL                                             !7, 'getCountOfGuests'
         23        DO_FCALL                                          0  $17     
         24        IS_SMALLER_OR_EQUAL                                  ~18     $17, !3
         25        BOOL                                                 ~16     ~18
         26    > > JMPZ                                                         ~16, ->30
  213    27    >   INIT_METHOD_CALL                                             !7, 'getCountOfGuests'
         28        DO_FCALL                                          0  $19     
         29        ASSIGN                                                       !6, $19
  211    30    > > JMP                                                          ->17
         31    >   FE_FREE                                                      $14
  217    32        INIT_METHOD_CALL                                             'SearchSuitableRoom'
         33        SEND_VAR_EX                                                  !0
         34        SEND_VAR_EX                                                  !1
         35        SEND_VAR_EX                                                  !2
         36        SEND_VAR_EX                                                  !6
         37        DO_FCALL                                          0  $22     
         38        ASSIGN_DIM                                                   !5
         39        OP_DATA                                                      $22
  218    40        INIT_FCALL                                                   'end'
         41        SEND_REF                                                     !5
         42        DO_ICALL                                             $23     
         43        INIT_METHOD_CALL                                             $23, 'changeIsFtee'
         44        DO_FCALL                                          0          
  219    45        ASSIGN_OP                                         2          !3, !6
  208    46    >   IS_SMALLER                                                   0, !3
         47      > JMPNZ                                                        ~26, ->12
  221    48    >   INIT_METHOD_CALL                                             'printInformationOfRooms'
         49        SEND_VAR_EX                                                  !5
         50        DO_FCALL                                          0          
  223    51      > FE_RESET_R                                           $28     !5, ->56
         52    > > FE_FETCH_R                                                   $28, !7, ->56
  224    53    >   INIT_METHOD_CALL                                             !7, 'changeIsFtee'
         54        DO_FCALL                                          0          
  223    55      > JMP                                                          ->52
         56    >   FE_FREE                                                      $28
  226    57      > RETURN                                                       null

End of function selectroom

Function getfreeroomsinrange:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getFreeRoomsInRange
number of ops:  12
compiled vars:  !0 = $hotel, !1 = $arrivalDate, !2 = $dateOfDeparture
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  228     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
  230     3        INIT_METHOD_CALL                                             'printInformationOfRooms'
          4        INIT_METHOD_CALL                                             'searchRooms'
          5        SEND_VAR_EX                                                  !0
          6        SEND_VAR_EX                                                  !2
          7        SEND_VAR_EX                                                  !1
          8        DO_FCALL                                          0  $3      
          9        SEND_VAR_NO_REF_EX                                           $3
         10        DO_FCALL                                          0          
  231    11      > RETURN                                                       null

End of function getfreeroomsinrange

Function getfreerooms:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  getFreeRooms
number of ops:  11
compiled vars:  !0 = $hotel, !1 = $date
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  233     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
  235     2        INIT_METHOD_CALL                                             'printInformationOfRooms'
          3        INIT_METHOD_CALL                                             'searchRooms'
          4        SEND_VAR_EX                                                  !0
          5        SEND_VAR_EX                                                  !1
          6        SEND_VAR_EX                                                  !1
          7        DO_FCALL                                          0  $2      
          8        SEND_VAR_NO_REF_EX                                           $2
          9        DO_FCALL                                          0          
  236    10      > RETURN                                                       null

End of function getfreerooms

Function searchrooms:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 7, Position 2 = 24
Branch analysis from position: 7
2 jumps found. (Code = 78) Position 1 = 8, Position 2 = 24
Branch analysis from position: 8
2 jumps found. (Code = 46) Position 1 = 11, Position 2 = 20
Branch analysis from position: 11
2 jumps found. (Code = 47) Position 1 = 15, Position 2 = 19
Branch analysis from position: 15
2 jumps found. (Code = 43) Position 1 = 21, Position 2 = 23
Branch analysis from position: 21
1 jumps found. (Code = 42) Position 1 = 7
Branch analysis from position: 7
Branch analysis from position: 23
Branch analysis from position: 19
Branch analysis from position: 20
Branch analysis from position: 24
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 24
filename:       /in/ULIPK
function name:  searchRooms
number of ops:  27
compiled vars:  !0 = $hotel, !1 = $date1, !2 = $date2, !3 = $freeRooms, !4 = $room
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  238     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
  240     3        ASSIGN                                                       !3, <array>
  242     4        INIT_METHOD_CALL                                             !0, 'getRooms'
          5        DO_FCALL                                          0  $6      
          6      > FE_RESET_R                                           $7      $6, ->24
          7    > > FE_FETCH_R                                                   $7, !4, ->24
  243     8    >   INIT_METHOD_CALL                                             !4, 'getIsFree'
          9        DO_FCALL                                          0  $8      
         10      > JMPZ_EX                                              ~9      $8, ->20
         11    >   INIT_METHOD_CALL                                             !4, 'getArrivalDate'
         12        DO_FCALL                                          0  $10     
         13        IS_SMALLER                                           ~11     !1, $10
         14      > JMPNZ_EX                                             ~11     ~11, ->19
         15    >   INIT_METHOD_CALL                                             !4, 'getDateOfDeparture'
         16        DO_FCALL                                          0  $12     
         17        IS_SMALLER                                           ~13     $12, !2
         18        BOOL                                                 ~11     ~13
         19    >   BOOL                                                 ~9      ~11
         20    > > JMPZ                                                         ~9, ->23
  244    21    >   ASSIGN_DIM                                                   !3
         22        OP_DATA                                                      !4
  242    23    > > JMP                                                          ->7
         24    >   FE_FREE                                                      $7
  247    25      > RETURN                                                       !3
  248    26*     > RETURN                                                       null

End of function searchrooms

Function searchsuitableroom:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 11, Position 2 = 19
Branch analysis from position: 11
2 jumps found. (Code = 78) Position 1 = 12, Position 2 = 19
Branch analysis from position: 12
2 jumps found. (Code = 43) Position 1 = 17, Position 2 = 18
Branch analysis from position: 17
1 jumps found. (Code = 42) Position 1 = 11
Branch analysis from position: 11
Branch analysis from position: 18
Branch analysis from position: 19
2 jumps found. (Code = 43) Position 1 = 26, Position 2 = 30
Branch analysis from position: 26
1 jumps found. (Code = 108) Position 1 = -2
Branch analysis from position: 30
2 jumps found. (Code = 77) Position 1 = 35, Position 2 = 57
Branch analysis from position: 35
2 jumps found. (Code = 78) Position 1 = 36, Position 2 = 57
Branch analysis from position: 36
2 jumps found. (Code = 43) Position 1 = 41, Position 2 = 51
Branch analysis from position: 41
1 jumps found. (Code = 42) Position 1 = 48
Branch analysis from position: 48
2 jumps found. (Code = 44) Position 1 = 50, Position 2 = 46
Branch analysis from position: 50
1 jumps found. (Code = 42) Position 1 = 56
Branch analysis from position: 56
1 jumps found. (Code = 42) Position 1 = 35
Branch analysis from position: 35
Branch analysis from position: 46
2 jumps found. (Code = 44) Position 1 = 50, Position 2 = 46
Branch analysis from position: 50
Branch analysis from position: 46
Branch analysis from position: 51
2 jumps found. (Code = 43) Position 1 = 55, Position 2 = 56
Branch analysis from position: 55
1 jumps found. (Code = 42) Position 1 = 35
Branch analysis from position: 35
Branch analysis from position: 56
Branch analysis from position: 57
2 jumps found. (Code = 77) Position 1 = 66, Position 2 = 88
Branch analysis from position: 66
2 jumps found. (Code = 78) Position 1 = 67, Position 2 = 88
Branch analysis from position: 67
2 jumps found. (Code = 43) Position 1 = 72, Position 2 = 82
Branch analysis from position: 72
1 jumps found. (Code = 42) Position 1 = 79
Branch analysis from position: 79
2 jumps found. (Code = 44) Position 1 = 81, Position 2 = 77
Branch analysis from position: 81
1 jumps found. (Code = 42) Position 1 = 87
Branch analysis from position: 87
1 jumps found. (Code = 42) Position 1 = 66
Branch analysis from position: 66
Branch analysis from position: 77
2 jumps found. (Code = 44) Position 1 = 81, Position 2 = 77
Branch analysis from position: 81
Branch analysis from position: 77
Branch analysis from position: 82
2 jumps found. (Code = 43) Position 1 = 86, Position 2 = 87
Branch analysis from position: 86
1 jumps found. (Code = 42) Position 1 = 66
Branch analysis from position: 66
Branch analysis from position: 87
Branch analysis from position: 88
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 88
Branch analysis from position: 57
Branch analysis from position: 19
filename:       /in/ULIPK
function name:  SearchSuitableRoom
number of ops:  97
compiled vars:  !0 = $hotel, !1 = $arrivalDate, !2 = $dateOfDeparture, !3 = $countOfGuests, !4 = $availableRoom, !5 = $room, !6 = $number, !7 = $minPrice, !8 = $i, !9 = $minGuests
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  250     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
          3        RECV                                                 !3      
  252     4        INIT_METHOD_CALL                                             'searchRooms'
          5        SEND_VAR                                                     !0
          6        SEND_VAR                                                     !2
          7        SEND_VAR                                                     !1
          8        DO_FCALL                                          0  $10     
          9        ASSIGN                                                       !4, $10
  254    10      > FE_RESET_R                                           $12     !4, ->19
         11    > > FE_FETCH_R                                           ~13     $12, !5, ->19
         12    >   ASSIGN                                                       !6, ~13
  256    13        INIT_METHOD_CALL                                             !5, 'getCountOfGuests'
         14        DO_FCALL                                          0  $15     
         15        IS_SMALLER                                                   $15, !3
         16      > JMPZ                                                         ~16, ->18
  257    17    >   UNSET_DIM                                                    !4, !6
  254    18    > > JMP                                                          ->11
         19    >   FE_FREE                                                      $12
  261    20        INIT_FCALL                                                   'sort'
         21        SEND_REF                                                     !4
         22        DO_ICALL                                                     
  263    23        COUNT                                                ~18     !4
         24        IS_EQUAL                                                     ~18, 0
         25      > JMPZ                                                         ~19, ->30
  264    26    >   NEW                                                  $20     'Exception'
         27        SEND_VAL_EX                                                  '%D0%9D%D0%B5%D1%82+%D0%BF%D0%BE%D0%B4%D1%85%D0%BE%D0%B4%D1%8F%D1%89%D0%B8%D1%85+%D0%BD%D0%BE%D0%BC%D0%B5%D1%80%D0%BE%D0%B2'
         28        DO_FCALL                                          0          
         29      > THROW                                             0          $20
  267    30    >   FETCH_DIM_R                                          ~22     !4, 0
         31        INIT_METHOD_CALL                                             ~22, 'getPrice'
         32        DO_FCALL                                          0  $23     
         33        ASSIGN                                                       !7, $23
  269    34      > FE_RESET_R                                           $25     !4, ->57
         35    > > FE_FETCH_R                                           ~26     $25, !5, ->57
         36    >   ASSIGN                                                       !6, ~26
  270    37        INIT_METHOD_CALL                                             !5, 'getPrice'
         38        DO_FCALL                                          0  $28     
         39        IS_SMALLER                                                   $28, !7
         40      > JMPZ                                                         ~29, ->51
  271    41    >   INIT_METHOD_CALL                                             !5, 'getPrice'
         42        DO_FCALL                                          0  $30     
         43        ASSIGN                                                       !7, $30
  273    44        ASSIGN                                                       !8, 0
         45      > JMP                                                          ->48
  274    46    >   UNSET_DIM                                                    !4, !8
  273    47        PRE_INC                                                      !8
         48    >   IS_SMALLER                                                   !8, !6
         49      > JMPNZ                                                        ~34, ->46
  270    50    > > JMP                                                          ->56
  276    51    >   INIT_METHOD_CALL                                             !5, 'getPrice'
         52        DO_FCALL                                          0  $35     
         53        IS_SMALLER                                                   !7, $35
         54      > JMPZ                                                         ~36, ->56
  277    55    >   UNSET_DIM                                                    !4, !6
  269    56    > > JMP                                                          ->35
         57    >   FE_FREE                                                      $25
  281    58        INIT_FCALL                                                   'sort'
         59        SEND_REF                                                     !4
         60        DO_ICALL                                                     
  283    61        FETCH_DIM_R                                          ~38     !4, 0
         62        INIT_METHOD_CALL                                             ~38, 'getCountOfGuests'
         63        DO_FCALL                                          0  $39     
         64        ASSIGN                                                       !9, $39
  285    65      > FE_RESET_R                                           $41     !4, ->88
         66    > > FE_FETCH_R                                           ~42     $41, !5, ->88
         67    >   ASSIGN                                                       !6, ~42
  286    68        INIT_METHOD_CALL                                             !5, 'getCountOfGuests'
         69        DO_FCALL                                          0  $44     
         70        IS_SMALLER                                                   $44, !9
         71      > JMPZ                                                         ~45, ->82
  287    72    >   INIT_METHOD_CALL                                             !5, 'getCountOfGuests'
         73        DO_FCALL                                          0  $46     
         74        ASSIGN                                                       !9, $46
  289    75        ASSIGN                                                       !8, 0
         76      > JMP                                                          ->79
  290    77    >   UNSET_DIM                                                    !4, !8
  289    78        PRE_INC                                                      !8
         79    >   IS_SMALLER                                                   !8, !6
         80      > JMPNZ                                                        ~50, ->77
  286    81    > > JMP                                                          ->87
  292    82    >   INIT_METHOD_CALL                                             !5, 'getCountOfGuests'
         83        DO_FCALL                                          0  $51     
         84        IS_SMALLER                                                   !9, $51
         85      > JMPZ                                                         ~52, ->87
  293    86    >   UNSET_DIM                                                    !4, !6
  285    87    > > JMP                                                          ->66
         88    >   FE_FREE                                                      $41
  297    89        INIT_FCALL                                                   'sort'
         90        SEND_REF                                                     !4
         91        DO_ICALL                                                     
  298    92        FETCH_DIM_R                                          ~54     !4, 0
         93        VERIFY_RETURN_TYPE                                           ~54
         94      > RETURN                                                       ~54
  299    95*       VERIFY_RETURN_TYPE                                           
         96*     > RETURN                                                       null

End of function searchsuitableroom

Function printhistoryofguest:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 125) Position 1 = 17, Position 2 = 23
Branch analysis from position: 17
2 jumps found. (Code = 126) Position 1 = 18, Position 2 = 23
Branch analysis from position: 18
1 jumps found. (Code = 42) Position 1 = 17
Branch analysis from position: 17
Branch analysis from position: 23
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 23
filename:       /in/ULIPK
function name:  printHistoryOfGuest
number of ops:  28
compiled vars:  !0 = $hotel, !1 = $firstName, !2 = $lastName, !3 = $rooms, !4 = $room
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  301     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
  303     3        ROPE_INIT                                         5  ~6      '%0A'
          4        ROPE_ADD                                          1  ~6      ~6, !1
          5        ROPE_ADD                                          2  ~6      ~6, '+'
          6        ROPE_ADD                                          3  ~6      ~6, !2
          7        ROPE_END                                          4  ~5      ~6, '+%D0%98%D1%81%D1%82%D0%BE%D1%80%D0%B8%D1%8F%0A'
          8        ECHO                                                         ~5
  305     9        INIT_METHOD_CALL                                             !0, 'getGuest'
         10        SEND_VAR_EX                                                  !1
         11        SEND_VAR_EX                                                  !2
         12        DO_FCALL                                          0  $9      
         13        INIT_METHOD_CALL                                             $9, 'getVisitedRooms'
         14        DO_FCALL                                          0  $10     
         15        ASSIGN                                                       !3, $10
  307    16      > FE_RESET_RW                                          $12     !3, ->23
         17    > > FE_FETCH_RW                                                  $12, !4, ->23
  308    18    >   INIT_METHOD_CALL                                             !0, 'getRoom'
         19        SEND_VAR_EX                                                  !4
         20        DO_FCALL                                          0  $13     
         21        ASSIGN                                                       !4, $13
  307    22      > JMP                                                          ->17
         23    >   FE_FREE                                                      $12
  311    24        INIT_METHOD_CALL                                             'printInformationOfRooms'
         25        SEND_VAR_EX                                                  !3
         26        DO_FCALL                                          0          
  312    27      > RETURN                                                       null

End of function printhistoryofguest

Function printhistoryofroom:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 33
Branch analysis from position: 33
2 jumps found. (Code = 44) Position 1 = 37, Position 2 = 15
Branch analysis from position: 37
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 15
2 jumps found. (Code = 44) Position 1 = 37, Position 2 = 15
Branch analysis from position: 37
Branch analysis from position: 15
filename:       /in/ULIPK
function name:  printHistoryOfRoom
number of ops:  38
compiled vars:  !0 = $hotel, !1 = $numberOfRoom, !2 = $guests, !3 = $i
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  314     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
  316     2        ROPE_INIT                                         3  ~5      '%0A%D0%98%D1%81%D1%82%D0%BE%D1%80%D0%B8%D1%8F+%D0%BA%D0%BE%D0%BC%D0%BD%D0%B0%D1%82%D1%8B+%E2%84%96+'
          3        ROPE_ADD                                          1  ~5      ~5, !1
          4        ROPE_END                                          2  ~4      ~5, '%0A%0A'
          5        ECHO                                                         ~4
  317     6        ECHO                                                         '%D0%98%D0%BC%D1%8F+++++++%D0%A4%D0%B0%D0%BC%D0%B8%D0%BB%D0%B8%D1%8F%0A'
  319     7        INIT_METHOD_CALL                                             !0, 'getRoom'
          8        SEND_VAR_EX                                                  !1
          9        DO_FCALL                                          0  $7      
         10        INIT_METHOD_CALL                                             $7, 'getGuests'
         11        DO_FCALL                                          0  $8      
         12        ASSIGN                                                       !2, $8
  321    13        ASSIGN                                                       !3, 0
         14      > JMP                                                          ->33
  322    15    >   INIT_METHOD_CALL                                             'padLeft'
         16        CHECK_FUNC_ARG                                               
         17        FETCH_DIM_FUNC_ARG                                   $11     !2, 'firstName'
         18        FETCH_DIM_FUNC_ARG                                   $12     $11, !3
         19        SEND_FUNC_ARG                                                $12
         20        SEND_VAL_EX                                                  10
         21        DO_FCALL                                          0  $13     
         22        INIT_METHOD_CALL                                             'padLeft'
         23        CHECK_FUNC_ARG                                               
         24        FETCH_DIM_FUNC_ARG                                   $14     !2, 'lastName'
         25        FETCH_DIM_FUNC_ARG                                   $15     $14, !3
         26        SEND_FUNC_ARG                                                $15
         27        SEND_VAL_EX                                                  10
         28        DO_FCALL                                          0  $16     
         29        CONCAT                                               ~17     $13, $16
         30        CONCAT                                               ~18     ~17, '%0A'
         31        ECHO                                                         ~18
  321    32        PRE_INC                                                      !3
         33    >   FETCH_DIM_R                                          ~20     !2, 'firstName'
         34        COUNT                                                ~21     ~20
         35        IS_SMALLER                                                   !3, ~21
         36      > JMPNZ                                                        ~22, ->15
  324    37    > > RETURN                                                       null

End of function printhistoryofroom

Function printinformationofrooms:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 3, Position 2 = 16
Branch analysis from position: 3
2 jumps found. (Code = 78) Position 1 = 4, Position 2 = 16
Branch analysis from position: 4
1 jumps found. (Code = 42) Position 1 = 3
Branch analysis from position: 3
Branch analysis from position: 16
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 16
filename:       /in/ULIPK
function name:  printInformationOfRooms
number of ops:  18
compiled vars:  !0 = $rooms, !1 = $room
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  326     0  E >   RECV                                                 !0      
  328     1        ECHO                                                         '%0A%D0%9D%D0%BE%D0%BC%D0%B5%D1%80+%D0%B2%D0%BC%D0%B5%D1%81%D1%82%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C%0A'
  330     2      > FE_RESET_R                                           $2      !0, ->16
          3    > > FE_FETCH_R                                                   $2, !1, ->16
  331     4    >   INIT_METHOD_CALL                                             'printRoomsRow'
          5        INIT_METHOD_CALL                                             !1, 'getNumber'
          6        DO_FCALL                                          0  $3      
          7        SEND_VAR_NO_REF_EX                                           $3
          8        INIT_METHOD_CALL                                             !1, 'getCountOfGuests'
          9        DO_FCALL                                          0  $4      
         10        SEND_VAR_NO_REF_EX                                           $4
         11        INIT_METHOD_CALL                                             !1, 'getPrice'
         12        DO_FCALL                                          0  $5      
         13        SEND_VAR_NO_REF_EX                                           $5
         14        DO_FCALL                                          0          
  330    15      > JMP                                                          ->3
         16    >   FE_FREE                                                      $2
  333    17      > RETURN                                                       null

End of function printinformationofrooms

Function padleft:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  padLeft
number of ops:  13
compiled vars:  !0 = $value, !1 = $columnLength
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  335     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
  337     2        ECHO                                                         !0
  338     3        INIT_FCALL                                                   'str_repeat'
          4        SEND_VAL                                                     '+'
          5        INIT_FCALL                                                   'mb_strlen'
          6        SEND_VAR                                                     !0
          7        DO_ICALL                                             $2      
          8        SUB                                                  ~3      !1, $2
          9        SEND_VAL                                                     ~3
         10        DO_ICALL                                             $4      
         11        ECHO                                                         $4
  339    12      > RETURN                                                       null

End of function padleft

Function printroomsrow:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ULIPK
function name:  printRoomsRow
number of ops:  23
compiled vars:  !0 = $numberOfRoom, !1 = $countOfGuests, !2 = $price, !3 = $col1, !4 = $col2, !5 = $col3
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  341     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
  343     3        ASSIGN                                                       !3, 6
  344     4        ASSIGN                                                       !4, 12
  345     5        ASSIGN                                                       !5, 20
  347     6        INIT_METHOD_CALL                                             'padLeft'
          7        SEND_VAR                                                     !0
          8        SEND_VAR                                                     !3
          9        DO_FCALL                                          0  $9      
         10        INIT_METHOD_CALL                                             'padLeft'
         11        SEND_VAR                                                     !1
         12        SEND_VAR                                                     !4
         13        DO_FCALL                                          0  $10     
         14        CONCAT                                               ~11     $9, $10
         15        INIT_METHOD_CALL                                             'padLeft'
         16        SEND_VAR                                                     !2
         17        SEND_VAR                                                     !5
         18        DO_FCALL                                          0  $12     
         19        CONCAT                                               ~13     ~11, $12
         20        CONCAT                                               ~14     ~13, '%0A'
         21        ECHO                                                         ~14
  348    22      > RETURN                                                       null

End of function printroomsrow

Function addreceiptsforhotel:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 7, Position 2 = 23
Branch analysis from position: 7
2 jumps found. (Code = 78) Position 1 = 8, Position 2 = 23
Branch analysis from position: 8
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 22
Branch analysis from position: 11
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 22
1 jumps found. (Code = 42) Position 1 = 7
Branch analysis from position: 7
Branch analysis from position: 23
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 23
filename:       /in/ULIPK
function name:  addReceiptsForHotel
number of ops:  36
compiled vars:  !0 = $hotel, !1 = $numberOfRoom, !2 = $arrivalDate, !3 = $date, !4 = $key
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
  350     0  E >   RECV                                                 !0      
          1        RECV                                                 !1      
          2        RECV                                                 !2      
  352     3        INIT_METHOD_CALL                                             !0, 'getReceipts'
          4        DO_FCALL                                          0  $5      
          5        FETCH_DIM_R                                          ~6      $5, 'date'
          6      > FE_RESET_R                                           $7      ~6, ->23
          7    > > FE_FETCH_R                                           ~8      $7, !3, ->23
          8    >   ASSIGN                                                       !4, ~8
  353     9        IS_EQUAL                                                     !2, !3
         10      > JMPZ                                                         ~10, ->22
  354    11    >   INIT_METHOD_CALL                                             !0, 'replenishMoney'
         12        INIT_METHOD_CALL                                             !0, 'getRoom'
         13        SEND_VAR_EX                                                  !1
         14        DO_FCALL                                          0  $11     
         15        INIT_METHOD_CALL                                             $11, 'getPrice'
         16        DO_FCALL                                          0  $12     
         17        SEND_VAR_NO_REF_EX                                           $12
         18        SEND_VAR_EX                                                  !4
         19        DO_FCALL                                          0          
  355    20        FE_FREE                                                      $7
         21      > RETURN                                                       null
  352    22    > > JMP                                                          ->7
         23    >   FE_FREE                                                      $7
  358    24        INIT_METHOD_CALL                                             !0, 'addDateOfReceipts'
         25        SEND_VAR_EX                                                  !2
         26        DO_FCALL                                          0          
  359    27        INIT_METHOD_CALL                                             !0, 'addMoneyOfReceipts'
         28        INIT_METHOD_CALL                                             !0, 'getRoom'
         29        SEND_VAR_EX                                                  !1
         30        DO_FCALL                                          0  $15     
         31        INIT_METHOD_CALL                                             $15, 'getPrice'
         32        DO_FCALL                                          0  $16     
         33        SEND_VAR_NO_REF_EX                                           $16
         34        DO_FCALL                                          0          
  360    35      > RETURN                                                       null

End of function addreceiptsforhotel

End of class Registration.

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
224.25 ms | 1556 KiB | 17 Q