【发布时间】:2013-12-26 04:22:41
【问题描述】:
我正在使用 PHP 使用这种语法创建和保存 xml 文件:
$xml->save("source1.xml") or die("Error");
在我意识到我有 300 多个来源之前,它运行良好。在我的工作文件所在的文件夹中的含义,例如;我的 css 和 php 文件我将有额外的 300++ xml 文件与我的主要工作文件混合在一起。最重要的是,我没有硬编码“source1.xml”,而是根据选定的源使其动态化,并动态创建 xml 文件,例如,如果选定的源是“source189.xml”并且该特定文件不存在。
所以我在为 xml doc 添加节点和子节点之前添加了这个:
$path = 'xml_'.$level.'_syll/';
$filename = $src.'.xml';
$file = $path.$filename;
有了这个,我用这个来保存我的xml:
$xml->save($file) or die("Error");
得到了这个错误:
Warning: DOMDocument::save() [domdocument.save]: Unable to access xml_data_syll/source3.xml in file.php on line 85
Warning: DOMDocument::save(xml_data_syll/source3.xml) [domdocument.save]: failed to open stream: No such file or directory in file.php on line 85
Error
所以我猜这与许可有关。我用谷歌搜索并找到了使用 chmod 授予权限的解决方案。那么如何在文件保存过程中插入 chmod 呢?
我试过了: $xml->save($file(chmod($file,0777))) 或 die("Error");
我得到的错误是:
Fatal error: Call to undefined function xml_data_syll/source3.xml() in file.php on line 86
非常感谢任何指针。
【问题讨论】: