在PHP中等待xml文件写入完成

在PHP中等待xml文件写入完成,php,xmlwriter,Php,Xmlwriter,我的PHP知识有限,我正在运行的脚本有问题 我正在合并相当多的xml提要,并将输出写入自定义xml文件中的我自己的服务器 我正在使用XMLWriter来完成这项工作,但我遇到的问题是知道文件何时成功完成写入 我通过SimpleXMLElement加载外部提要,脚本总共需要大约10秒才能运行,但当我在脚本末尾打印($xmlWriter)时,它是空的,我试图编写的xml文件也是空的 xml文件已成功编写,但在php内容中,我不确定何时编写,并且只希望在编写成功后继续编写其他代码 谢谢你的帮助 谢谢您

我的PHP知识有限,我正在运行的脚本有问题

我正在合并相当多的xml提要,并将输出写入自定义xml文件中的我自己的服务器

我正在使用XMLWriter来完成这项工作,但我遇到的问题是知道文件何时成功完成写入

我通过SimpleXMLElement加载外部提要,脚本总共需要大约10秒才能运行,但当我在脚本末尾打印($xmlWriter)时,它是空的,我试图编写的xml文件也是空的

xml文件已成功编写,但在php内容中,我不确定何时编写,并且只希望在编写成功后继续编写其他代码

谢谢你的帮助


谢谢

您可以检查$xmlWriter是否为空,正如您所说,这就是问题所在,并循环直到它不为空,但同时您可以告诉PHP等待一段时间以节省性能:

//while the XML hasn't finished being written yet
while ($xmlWriter == "") {
  // sleep for 10 seconds
  sleep(10);
}

您甚至可以记录它等待的时间,然后在一段时间后放弃并处理失败。

@clarly:您可以在这里添加实际使用的代码吗?PHP是同步的,如果您的代码说文件应该在代码中的某个特定点写入,那么它将在该点写入。