PHP Conference Nagoya 2025

XMLReader::setRelaxNGSchemaSource

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

XMLReader::setRelaxNGSchemaSourceSpécifie le schéma RelaxNG

Description

public XMLReader::setRelaxNGSchemaSource(?string $source): bool

Spécifie le schéma RelaxNG à utiliser pour validation.

Liste de paramètres

source

Chaîne de caractères contenant le schéma RelaxNG.

Valeurs de retour

Cette fonction retourne true en cas de succès ou false si une erreur survient.

Voir aussi

add a note

User Contributed Notes 2 notes

up
1
remy dot damour at laposte dot net
15 years ago
If you get the following warning message when calling ->setRelaxNGSchemaSource(): "Warning: XMLReader::setRelaxNGSchemaSource()
[xmlreader.setrelaxngschemasource]: Unable to set schema. This must be
set prior to reading or schema contains errors."

Make sure to load data using XMLReader::open() or XMLReader::xml() prior to calling XMLReader::setRelaxNGSchemaSource().

Cf. comment on XMLReader::setRelaxNGSchema for more details.
up
-1
anzenews at volja dot net
16 years ago
This function and setRelaxNGSchema() seem picky about when they are called - right after the call to open(). For example:

<?php
$schema
="/path/to/schema.rng";
$xmlfile="/path/to/xml.xml";

$xml = new XMLReader();
$xml->open($xmlfile);
$xml->setRelaxNGSchemaSource(file_get_contents($schema));

while (
$xml->read()) {
// ...
}

$xml->close();
?>
To Top