public function setValue($p_value) { if (!MetaTime::IsValid($p_value)) { throw new InvalidValueException($p_value, MetaTime::GetTypeName()); } $this->m_value = trim($p_value); $timeComponents = preg_split('/:/', $p_value); $this->m_hour = $timeComponents[0]; $this->m_minute = $timeComponents[1]; $this->m_second = isset($timeComponents[2]) ? $timeComponents[2] : 0; }