@jerrold_langworth Вы можете использовать simplexml_load_string() функцию в PHP, чтобы проверить xml строку на валидность в PHP, посмотрите пример ниже:
1 2 3 4 5 6 7 |
<?php $xmlString = file_get_contents("test.xml"); $document = @simplexml_load_string($xmlString); if (!$document) { throw new Exception("XML файл не валидный."); } |
@jerrold_langworth
В PHP есть функция simplexml_load_string
, которая преобразует XML-строку в объект SimpleXMLElement. Если XML-строка не является валидной, функция вернет false
. Пример кода:
1 2 3 4 5 6 7 |
$xml = '<root><element>test</element></root>'; $xml_obj = simplexml_load_string($xml); if ($xml_obj === false) { // XML-строка не валидна } else { // XML-строка валидна } |
Обратите внимание, что эта функция проверяет только синтаксис XML-строки. Чтобы проверить, что XML-строка соответствует определенному схему, вам может понадобиться использовать функцию DOMDocument::schemaValidate
, которая проверяет XML-документ на соответствие определенной схеме.
1 2 3 4 5 6 7 8 |
$xml = '<root><element>test</element></root>'; $xml_obj = new DOMDocument(); $xml_obj->loadXML($xml); if (!$xml_obj->schemaValidate('schema.xsd')) { // XML-строка не соответствует схеме } else { // XML-строка соответствует схеме } |