Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php libxml_get_错误自定义错误处理程序_Php_Xml_Error Handling - Fatal编程技术网

Php libxml_get_错误自定义错误处理程序

Php libxml_get_错误自定义错误处理程序,php,xml,error-handling,Php,Xml,Error Handling,嗨 我已经创建了一个模块,该模块从有效的xml构建表单,表单提交后,它将重建一个xml并根据xsd模式对其进行验证。如果表单未正确编译,它将返回到表单,并返回libxml_get_errors获取的所有错误消息。问题是libxml_get_错误不会生成用户友好的错误消息。 有没有办法扩展错误处理程序以生成更简单、更用户友好的错误消息 if (!$doc->schemaValidate($schema_riferimento)) { $errors = libxml_get_erro

嗨 我已经创建了一个模块,该模块从有效的xml构建表单,表单提交后,它将重建一个xml并根据xsd模式对其进行验证。如果表单未正确编译,它将返回到表单,并返回libxml_get_errors获取的所有错误消息。问题是libxml_get_错误不会生成用户友好的错误消息。 有没有办法扩展错误处理程序以生成更简单、更用户友好的错误消息

if (!$doc->schemaValidate($schema_riferimento)) 
{ 
  $errors = libxml_get_errors(); 
  foreach ($errors as $error) 
  { 
    array_push($global_errors, $error->message); 
    log_message('debug', "Errore di validazione: ".$error->message); 
  } 
}

我只想创建一个散列,在其中保存友好的错误消息,由错误代码键入

例如:

$friendly_errors = array(
                       '0' => 'One friendly error message',
                       '1' => 'Another friendly error message
                   );
$friendly_error_message = $friendly_errors[$error->code];
log_message('debug', $friendly_error_message);

很简单。

我只想创建一个散列,在其中保存友好的错误消息,由错误代码键入

例如:

$friendly_errors = array(
                       '0' => 'One friendly error message',
                       '1' => 'Another friendly error message
                   );
$friendly_error_message = $friendly_errors[$error->code];
log_message('debug', $friendly_error_message);

简单。

你说的“更简单”和“更友好”到底是什么意思?你能举个例子吗?当然。。。libxml_get_errors生成的一个典型错误是:“'piva_-utete':[facet'pattern']模式'\d{11}'不接受值'IdentificationVirichiesta_u-piva_-utete',我想显示一个类似“字段xxx必须是11位数字”的错误,或者类似的东西…@Nextneed-你从哪里得到错误消息?你确定是来自libxml\u get\u error而不是xml本身吗?@ajreal-是的,它们来自libxml\u get\u errors,我将所有错误消息推送到一个数组中,并将其发送到表单生成器。。。如果(!$doc->schemaValidate($schema_riferimento)){$errors=libxml_get_errors();foreach($errors as$error){array_push($global_errors,$error->message);log_message('debug',“error di validazione:.$error->message);}@下一步-你有错误代码+消息,完全取决于你如何做显示。。。10000%是一个蹩脚的问题你所说的“更简单”和“更友好”到底是什么意思?你能举个例子吗?当然。。。libxml_get_errors生成的一个典型错误是:“'piva_-utete':[facet'pattern']模式'\d{11}'不接受值'IdentificationVirichiesta_u-piva_-utete',我想显示一个类似“字段xxx必须是11位数字”的错误,或者类似的东西…@Nextneed-你从哪里得到错误消息?你确定是来自libxml\u get\u error而不是xml本身吗?@ajreal-是的,它们来自libxml\u get\u errors,我将所有错误消息推送到一个数组中,并将其发送到表单生成器。。。如果(!$doc->schemaValidate($schema_riferimento)){$errors=libxml_get_errors();foreach($errors as$error){array_push($global_errors,$error->message);log_message('debug',“error di validazione:.$error->message);}@下一步-你有错误代码+消息,完全取决于你如何做显示。。。10000%是个蹩脚的问题