/** * @param string $value * @param string $mappingFormat * @return \DateTime */ private function transformStringToDateTime($value, $mappingFormat) { if (!isset($mappingFormat)) { throw new DataGridColumnException('"mapping_fields_format" option is missing. Example: "mapping_fields_format" => "Y-m-d H:i:s"'); } if (!is_string($mappingFormat)) { throw new DataGridColumnException('When using input type "string", "mapping_fields_format" option must be an string that contains valid data format'); } $dateTime = \DateTime::CreateFromFormat($mappingFormat, $value); if (!$dateTime instanceof \DateTime) { throw new DataGridColumnException(sprintf('value "%s" does not fit into format "%s" ', $value, $mappingFormat)); } return $dateTime; }