public function __construct($parameters){ $this->minesweepers = new ArrayIterator(); $fieldId = 1; while (strlen($parameters) > 0){ $minesweeperParameters = new MinesweeperParameters($parameters); if ($minesweeperParameters->getRows() > 0){ $minesweeperParameters->setFieldId($fieldId); $minesweeper = new Minesweeper($minesweeperParameters); $this->minesweepers->append($minesweeper); $fieldId++; } $parameters = $minesweeperParameters->getUnusedParameters(); } }