XMLReader::setRelaxNGSchema

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

XMLReader::setRelaxNGSchema设置 RelaxNG Schema 的文件名或 URI

描述

public XMLReader::setRelaxNGSchema(?string $filename): bool

设置用于验证的 RelaxNG Schema 的文件名或 URI。

参数

filename

指向 RelaxNG Schema 的文件名或 URI。

返回值

成功时返回 true,失败时返回 false

参见

添加笔记

用户贡献笔记 1 条笔记

remy dot damour at laposte dot net
15 年前
确保在调用 ->setRelaxNGSchema() 之前加载数据,否则会发生错误。

<?php
$xml_reader
= new XMLReader();
$xml_reader->setRelaxNGSchema($rng_schema);
$xml_reader->xml($xml_data);
?>
上面的代码会生成以下警告:"警告:XMLReader::setRelaxNGSchemaSource()
[xmlreader.setrelaxngschemasource]: 无法设置模式。这必须
在读取之前设置,或者模式包含错误。"

而以下代码不会生成警告
<?php
$xml_reader
= new XMLReader();
$xml_reader->xml($xml_data); // or $xml_reader->xml($xml_file);
$xml_reader->setRelaxNGSchema($rng_schema);
?>

参见 http://bugs.php.net/bug.php?id=46978
To Top