Nelmio\Alice\Throwable\Error\TypeErrorFactory::createForInvalidIncludedFilesInData PHP Метод

createForInvalidIncludedFilesInData() публичный статический Метод

public static createForInvalidIncludedFilesInData ( $includeFile, string $file ) : TypeError
$file string
Результат TypeError
    public static function createForInvalidIncludedFilesInData($includeFile, string $file) : \TypeError
    {
        return new \TypeError(sprintf('Expected elements of include statement to be file names. Got "%s" instead in file "%s".', gettype($includeFile), $file));
    }

Usage Example

Пример #1
0
 /**
  * @inheritdoc
  */
 public function process(ParserInterface $parser, string $file, array $data) : array
 {
     if (false === array_key_exists('include', $data)) {
         throw InvalidArgumentExceptionFactory::createForNoIncludeStatementInData($file);
     }
     $include = $data['include'];
     unset($data['include']);
     if (null === $include) {
         return $data;
     }
     if (false === is_array($include)) {
         throw TypeErrorFactory::createForInvalidIncludeStatementInData($include, $file);
     }
     foreach ($include as $includeFile) {
         if (false === is_string($includeFile)) {
             throw TypeErrorFactory::createForInvalidIncludedFilesInData($includeFile, $file);
         }
         if (0 === strlen($includeFile)) {
             throw InvalidArgumentExceptionFactory::createForEmptyIncludedFileInData($file);
         }
         $filePathToInclude = $this->fileLocator->locate($includeFile, dirname($file));
         $fileToIncludeData = $parser->parse($filePathToInclude);
         if (array_key_exists('include', $fileToIncludeData)) {
             $fileToIncludeData = $this->process($parser, $file, $fileToIncludeData);
         }
         $data = $this->dataMerger->mergeInclude($data, $fileToIncludeData);
     }
     return $data;
 }