0
當我用xsd驗證我的xml文件並使用多個驗證工具時,它們都返回肯定結果:驗證成功。php-xml驗證xsd
但是當在schema中使用schemaValidate時,驗證將在60秒後正好顯示空白頁。我試圖找到一些這方面的解釋:
$doc = new DOMDocument();
$doc->load('C:\a\xml.xml');
try{
$is_valid_xml = $doc->schemaValidate('http://xxxxxxx/schema.xsd');
if ($is_valid_xml == true) {
echo 'ok';
}else {
throw new Exception('Validation not successful!');
}
}catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage(), "<br />";
} finally {
print_r(error_get_last());
}
當我用上面的方法對其他一些通用的XML + XSD例如它工作正常。如果我刻意搞砸這個XML,我會得到結果「被捕獲的異常:驗證不成功!」和一些錯誤信息,但與我真正的XML + XSD文件(這是更復雜),我得到空白頁。
任何想法爲什麼會發生這種情況?這確切的60秒似乎有些會話超時或類似的東西,但我已經在php.ini中查找它設置爲1440秒(session.gc_maxlifetime = 1440)...
歡迎來到Stack Overflow。在[SO幫助文件](http://stackoverflow.com/help/how-to-ask)以及Eric Raymond和Rick Moen的文章[如何以智能的方式提問]中提供有效問題的建議很好( http://catb.org/~esr/faqs/smart-questions.html)。如果您提供[最小完整可驗證示例](http://stackoverflow.com/help/mcve),您會得到更好的回覆。在將真實的XML和XSD縮減爲展現問題行爲的最小示例時,您可能會發現問題並且不再需要提出問題 - 這只是您必須承擔的風險。 – 2014-12-05 15:42:38
嗨tnx的說明。我找到了解決方案。問題出現在php.ini >>> max_execution_time = 30 – Mario 2014-12-08 16:05:14