저는 수년 동안 PHP를 사용해 본 적이 없으며 트위터의 이름이 필요한 방식으로 트윗 피드의 RSS 피드를 조작하려고합니다. 나는 현재 TwitRSS에서 RSS 피드를 가져오고 있으며 tweeter의 이름이 네임 스페이스를 사용한다는 것을 제외하고는 모두 정상적으로 작동합니다. 따라서 요소는 트위터 이름을 말합니다. 나는이 사이트에서 네임 스페이스를 사용하는 방법에 대해 많은 스레드를 보았으며 성공하지 못했지만 모두 시도했습니다. 물론이 에코의 아웃되는 모든 일반 요소에 대해 잘 작동네임 스페이스를 SimpleXML로 바꾸려면 어떻게해야합니까?
$newsoutput = new SimpleXMLElement('http://twitrss.me/twitter_search_to_rss/?term=php', LIBXML_NOCDATA, true);
$newsoutput = json_decode(json_encode($newsoutput), TRUE);
foreach ($newsoutput['channel']['item'] as $item) {
echo $item['title']."<br>".$item['description']."<br>".$item['link']."<br>".$item['guid']."<br>".$item['pubDate']."<br>";
echo $item['author']."br";}
,하지만 내가 네임 스페이스 태그를 얻으려고 할 때마다 내가 해봤 모든 솔루션은 결과는 :
는 지금 내 코드는 다음과 같습니다 루프의 오류 메시지 일반적으로 자식 요소가 null 인 것과 관련이 있습니다.이제 다른 해결책을 시도하고 싶습니다. 나는 네임 스페이스 요소가 아닌 모든 네임 스페이스 요소를 바꿀 문자열 교체를하고 싶습니다. 이상적인 결과 RSS 피드는 모든 요소를 대체 한 다음 정상적으로 제거합니다.
내가 추가 해봤 물건처럼 : 나는 항목 요소의 배열을 반복하고 echo'ing 전에 SimpleXML을 배열을 변경해야 할 것이라고 생각하기 때문
$newsoutput->str_replace("dc:creator","author","");
내가 루프 전에 추가 . 내가 뭘하고 있는지 하나의 문제는 php str_replace가 3 개의 매개 변수를 필요로한다는 것이며 두 개만 생각할 수 있다는 것입니다. 내가 바꾸고 싶은 단어와 그것을 대체하고 싶은 단어. 그 밖의 무엇이 필요하겠습니까? 또한 새로운 네임 스페이스 프리 피드에 대한 루프를 실행하기 전에 replace 문자열에 대한 루프를 실행해야한다고 생각합니다.
는 죄송합니다 "트위터 이름은"네임 스페이스와 태그에 둘러싸여되어야하지만 그것은 – XCon065
'str_replace' 글로벌 기능을 밖으로 제거되었다. '-> str_replace'가 클래스 메소드를 사용하고 있습니다. 당신은 그것을 잘못 이해하고 있습니다. –
oops, 작성자가 이전 문자열에서 시도로 대체되었습니다. – XCon065