prewk / xml-faker
使用fzaniotto/Faker的帮助创建随机XML。
0.1.1
2020-03-31 17:31 UTC
Requires
- php: >=5.3.0
- fzaninotto/faker: 1.6.0
README
在 fzaninotto/Faker 的帮助下创建伪造XML
为什么?
对测试很有用。
使用方法
将有效的 SimpleXMLElement
传递给构造函数,并使用这些方法以所需的大小生成XML。
您提供的XML将被用作创建随机XML的蓝图。如果属性是整数,将为这些属性创建随机整数。如果您的节点文本包含换行符,将为这些节点创建具有相同换行符数量的随机文本。
仅使用遇到的第一个节点,其余提供的XML将被忽略。
安装
composer.json
"require": {
"prewk/xml-faker": "*"
}
示例
创建一个example.xml文件
<root-node>
<node>
<child-a>OneWord</child-a>
<child-b>123</child-b>
<child-c an-integer-attribute="123">
<grandchild an-float-attribute="456">
This is some
text on some
lines
</grandchild>
</child-c>
</node>
</root-node>
加载它
$myXmlBlueprint = simplexml_load_file("example.xml");
$xmlFaker = new Prewk\XmlFaker($myXmlBlueprint);
创建包含100个节点的XML字符串
echo $xmlFaker->asString(Prewk\XmlFaker::NODE_COUNT_RESTRICTION_MODE, 100);
创建最大1 MB(1024 * 1024字符)的XML字符串
echo $xmlFaker->asString(Prewk\XmlFaker::BYTE_COUNT_RESTRICTION_MODE, 1024 * 1024);
更有用,将100 MB的XML文件流式传输到磁盘(需要一些时间)
$xmlFaker->asFile("my-new-large-xml-file.xml", Prewk\XmlFaker::BYTE_COUNT_RESTRICTION_MODE, 100 * 1024 * 1024);