• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/settings/worktime.php
  • Класс: Bitrix\Crm\Settings\WorkTime
  • Вызов: WorkTime::initTimeObject
private function initTimeObject(string $input): object
{
	return new class($input)
	{
		public int $hours = 0;
		public int $minutes = 0;

		public function __construct(string $input)
		{
			$inputArr = preg_split("/[\s.:]/", $input);

			$this->hours = (int)$inputArr[0];
			$this->minutes = isset($inputArr[1]) ? (int)$inputArr[1] : 0;
		}

		public function toString(string $separator = ':'): string
		{
			return sprintf('%d%s%s', $this->hours, $separator, $this->minutes);
		}

		public function __toString(): string
		{
			return $this->toString();
		}
	};
}