Sulu\Component\Webspace\Loader\BaseXmlFileLoader::supports PHP Method

supports() public method

public supports ( $resource, $type = null )
    public function supports($resource, $type = null)
    {
        if (!is_string($resource) || 'xml' !== pathinfo($resource, PATHINFO_EXTENSION)) {
            return false;
        }
        $document = XmlUtils::loadFile($resource);
        $namespaces = $document->documentElement->attributes->getNamedItem('schemaLocation')->nodeValue;
        $start = strpos($namespaces, static::SCHEMA_IDENTIFIER) + strlen(static::SCHEMA_IDENTIFIER) + 1;
        $namespace = substr($namespaces, $start);
        $end = strpos($namespace, ' ');
        if ($end !== false) {
            $namespace = substr($namespace, 0, $end);
        }
        return $namespace === static::SCHEMA_URI;
    }

Usage Example

Example #1
0
 /**
  * Returns true if this class supports the given resource.
  *
  * @param mixed $resource A resource
  * @param string $type The resource type
  *
  * @return bool true if this class supports the given resource, false otherwise
  */
 public function supports($resource, $type = null)
 {
     return parent::supports($resource, $type);
 }
BaseXmlFileLoader