PHP Conference Japan 2024

XMLReader::setRelaxNGSchemaSource

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

XMLReader::setRelaxNGSchemaSource设置包含 RelaxNG 架构的数据

描述

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

设置包含用于验证的 RelaxNG 架构的数据。

参数

source

包含 RelaxNG 架构的字符串。

返回值

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

参见

添加注释

用户贡献的注释 2 条注释

remy dot damour at laposte dot net
15 年前
如果您在调用 ->setRelaxNGSchemaSource() 时收到以下警告消息:“警告:XMLReader::setRelaxNGSchemaSource()
[xmlreader.setrelaxngschemasource]:无法设置架构。这必须
在读取之前设置或架构包含错误。”

确保在调用 XMLReader::setRelaxNGSchemaSource() 之前使用 XMLReader::open() 或 XMLReader::xml() 加载数据。

有关更多详细信息,请参阅 XMLReader::setRelaxNGSchema 上的注释。
anzenews at volja dot net
16 年前
此函数和 setRelaxNGSchema() 似乎对何时被调用很挑剔 - 紧接在对 open() 的调用之后。例如

<?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