asXML() 在成功时不返回 true
asXML() not returning true on success
这一行有效:
$catXML->asXML('content/catalogue.xml');
目录保存正确。手册说 asXML() 应该 return 布尔值 TRUE 或失败时为 FALSE。所以我试过了:
if (!$catXML) {
// Catalogue did not save or path was invalid
$responseHd = 'Sorry';
etc....
但即使我设置了无效路径,它也会报告成功。 gettype($catXML) 还显示 'object' 具有无效路径和通过有效路径成功。
我错过了什么?
您没有查看 asXML
调用的结果。您只是在评估 $catXML
,这是 SimpleXML 对象本身。这不会受到调用的影响,它仍然是之前的对象。
如果你想检查文件是否写入成功,你需要将调用结果赋值给某些东西:
$success = $catXML->asXML('content/catalogue.xml');
if (!$success) {
// Catalogue did not save or path was invalid
$responseHd = 'Sorry';
...
好吧,我不觉得自己很傻。非常感谢您的快速回复,很抱歉占用了您的时间。
鲍勃
这一行有效:
$catXML->asXML('content/catalogue.xml');
目录保存正确。手册说 asXML() 应该 return 布尔值 TRUE 或失败时为 FALSE。所以我试过了:
if (!$catXML) {
// Catalogue did not save or path was invalid
$responseHd = 'Sorry';
etc....
但即使我设置了无效路径,它也会报告成功。 gettype($catXML) 还显示 'object' 具有无效路径和通过有效路径成功。
我错过了什么?
您没有查看 asXML
调用的结果。您只是在评估 $catXML
,这是 SimpleXML 对象本身。这不会受到调用的影响,它仍然是之前的对象。
如果你想检查文件是否写入成功,你需要将调用结果赋值给某些东西:
$success = $catXML->asXML('content/catalogue.xml');
if (!$success) {
// Catalogue did not save or path was invalid
$responseHd = 'Sorry';
...
好吧,我不觉得自己很傻。非常感谢您的快速回复,很抱歉占用了您的时间。
鲍勃