Валидатор не может отличить вывод print_ \ r () от окружающей html-структуры; он просто анализирует весь поток символов. Если выходные данные вашего print_r () содержат символы, которые имеют особое значение в html (очевидно, <и> в вашем случае), валидатор должен предположить, что он принадлежит структуре html, а не текстовым данным. Вы должны пометить их как «нет, это просто текстовые данные, а не управляющий символ» для HTML-парсеров. Один из способов сделать это - отправить сущностей вместо самого "реального" символа, например, & Lt; вместо <<br>
Функция htmlspecialchars () заботится о тех символах, которые всегда имеют особое значение в (x) html.
Вы также можете заключить вывод в элемент ....
, чтобы сохранить форматирование print_r ().
<code>echo '<pre>', htmlspecialchars(print_r($myStuff, true)), "
\ п ";