그래 어떻게 됐어? cakePHP 쿼리 결과 배열 구성과 xml 도우미가 xml 파일의 적절한 생성을 위해 그것을 보려고하는 형식 사이에 문제가 있습니다.
$posts = array(
'post' => array(
array(
'id' => '1',
'tittle' => 'The title'
),
array(
'id' => '2',
'tittle' => 'A title once again'
)
)
);
이 CakePHP의에 $xml = Xml::build($xmlPosts);
같은 명령에 기대하는 것, 예를 들어, index.ctp에 모든 게시물 ($posts = $this->Post->find('all');
)
을 얻기 위해 예를 들어, 당신은 이것은 당신이 무엇을 얻을 배열을 구성 파일 내에서 xml 폴더 아래보기/게시물 :
$posts = array(
'posts' => array(
'post' => array(
array(
'id' => '1',
'tittle' => 'The title'
),
array(
'id' => '2',
'tittle' => 'A title once again'
)
)
)
);
$xml = Xml::build($post);
이 문제는 XML 파서가 배열의 루트 요소를 필요로한다는 점에서 문제가됩니다.
cakePHP에 대한 설명은 없습니다. 따라서 요리 책 초보자 인 경우 REST 서비스에 대한 예를 따라야한다.
index.ctp xml 생성자에서 배열 재배치 문제를 해결할 수 있습니다. 다음과 같은 내용이 있습니다.
<?php
$xmlPosts = array('posts' => array('post' => $posts));
$xml = Xml::build($xmlPosts);
echo $xml->saveXML();
?>
나는 최적의 해결책이 아님을 알고 있습니다. 그러나 나는 더 사려 깊은 대답에 열려 있습니다.