Intereting Posts

Согласование целевой команды обработки « » недопустимо

Я выводил XML в CakePHP. Но я получаю эту ошибку, когда я помещаю свой XML в валидатор:

The processing instruction target matching "[xX][mM][lL]" is not allowed. 

Я использую правильный XML-макет с <?php echo $this->Xml->header(); ?> <?php echo $this->Xml->header(); ?> вверху, затем <?php echo $content_for_layout; ?> <?php echo $content_for_layout; ?>

Мои результаты:

 <?xml version="1.0" encoding="UTF-8" ?><response type='' outcome='true' message='Login successful!'> <user id='1234' total_number_of_completed_tasks='0' total_number_of_declined_tasks='0' total_number_of_passed_tasks='1' total_number_of_failed_tasks='1' reputation_points='99' deviant_points='0' /> <tasks> <accepted> <accepted_task id='4' type='Good' time_limit='500' details='Good accepted' /> <accepted_task id='5' type='OK' time_limit='660' details='Ok New task' /> <accepted_task id='9' type='Excellent' time_limit='2000' details='Great failed task' /> <accepted_task id='11' type='Your type' time_limit='222' details='Running and swimming all the way to Japan' /> <accepted_task id='7' type='Man' time_limit='744' details='My dirty task' /> </accepted> <pending> <pending_task id='8' type='Women' time_limit='5151' details='Women new task' sender_id='11111' sent_date='2031-01-01 00:00:00' sender_name='Jae Choi' /> </pending> <completed> </completed> <new> <new_task id='5' type='OK' time_limit='660' details='Ok New task' /> <new_task id='8' type='Women' time_limit='5151' details='Women new task' /> <new_task id='4' type='Good' time_limit='500' details='Good accepted' /> <new_task id='10' type='Hello' time_limit='122' details='What is this?' /> <new_task id='3' type='Best' time_limit='880' details='Stop doing work!' /> <new_task id='11' type='Your type' time_limit='222' details='Running and swimming all the way to Japan' /> <new_task id='6' type='Great' time_limit='553' details='Great accepted task' /> <new_task id='7' type='Man' time_limit='744' details='My dirty task' /> <new_task id='9' type='Excellent' time_limit='2000' details='Great failed task' /> </new> </tasks> </response> 

Что-то не так с этим?

marmalad и El Boletaire Underave являются правильными, что вы не можете начать с места, но это не полная история. Согласно спецификации XML , вы не можете ничего иметь перед прологом XML.

Поскольку вы используете объявление XML, вы должны запустить свой файл с помощью

 <?xml version="1.0" ... 

В некоторых случаях непечатаемые символы, такие как знак порядка байтов (BOM), могут вызвать проблемы, беря первые несколько байтов файла.

Для проблемы, более конкретной для CakePHP, убедитесь, что у вас нет пустых строк / пробелов в начале или конце ваших файлов (т. Е. После вашего ?> Или перед вашим <?php ).

Как сказал El Boletaire Underave , проверьте, генерируется ли XML без какого-либо пробела в начале. это поможет мне с моим xml.

Проверьте свой XML-файл, он может начинаться с пробела. Если ваш XML-файл начинается с пробелов, этот тип Exception будет выведен.

перед <?xml ?> u не должно быть пробелов. этот тег должен быть в первой строке. это сработало для меня