2010-05-21 4 views
4

XML을 뷰 파일에 출력하려고했습니다. 뷰 파일은 result_view.php이고 그것의 첫 번째 줄은CodeIgniter에서 XML을 출력합니다.

<?php echo '<?xml version="1.0" encoding="UTF-8"?>'; ?>

입니다하지만 오류 "콘텐츠 프롤로그에서 허용되지 않습니다"를 얻는다. 이렇게 정확하게하는 방법? Eclipse + PDT를 사용합니다.

답변

1

이것이 어떤 문제를 일으키는 지 모르지만 .htaccess 파일에서 PHP의 짧은 태그 열기를 사용 중지했고 <?xml이 작동했습니다. PHP는 더 이상 <?을 PHP 스크립트로 구문 분석하지 않았습니다.

+0

그게 내 다음 행동이 될거야.하지만 그 외에는 더 나은 해결책이 있어야합니다. – bschaeffer

-1

왜 PHP 문자열을 사용하여 간단한 문자열을 출력합니까?

어떻게 당신의보기의 상단이 퍼팅에 대해 : 당신의 < XML 전에

<?xml version="1.0" encoding="UTF-8"?> 
+2

짧은 태그 ... (15 문자) –

+0

@ 대니얼 예 짧은 태그가 문제가 될 수 있습니다. – zihaoyu

2

이 오류는 데이터를 가지고 있음을 나타내는 것 같다? > 선언. 파일 시작 부분에 Byte Order Mark이있을 수 있습니다.

편집기에서 파일을 열어 BOM (예 : Notepad ++)을 제거하거나 16 진수 형식의 파일을 볼 수있는 편집기를 열어보십시오. 또한 BOM을 제거하는 데 사용할 수있는 몇 가지 도구가 있습니다. Google이 귀하의 상황과 환경에 따라 귀하가 사용하는 도구가 달라 지므로 자세한 정보는 Google에 문의하십시오.

8

하나의 쉬운 해결책은 뷰 파일에 PHP 헤더를 설정 한 다음 xml 헤더를 반향하는 것입니다. 보기 파일의 상단에

넣어이 :

<?php header ("Content-Type:text/xml"); ?> 
<?php echo '<?xml version="1.0" encoding="UTF-8"?>';?> 
+0

감사합니다 첫줄은 필수입니다 !!! – user3257693

1
<&#063;xml version="1.0" encoding="utf-8" standalone="yes"&#063;> 

HTML에서 좋아 보인다, 그러나 수신기 (응용 프로그램) ?and#063;를 교체해야합니다.