2010-09-15 2 views
1

Это мой шаблон RSS, который я загружаю в свой объект simplexml. Я хочу, чтобы изменитьПространство имен Atom с php simplexml

<?xml version="1.0" encoding="utf-8"?> 
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"> 
    <channel> 
     <atom:link href="link" rel="self" type="application/rss+xml" /> 
     <title></title> 
     <link></link> 
     <description></description> 
     <lastBuildDate></lastBuildDate> 
    </channel> 
</rss> 

я хотел бы изменить HREF атрибута в атоме: ссылка, но я понятия не имею, как получить к нему доступ. Я просмотрел SO и нашел кучу информации о том, как получить доступ к различным пространствам имен, но я не могу понять, как применить любой из них к этому конкретному примеру (в основном из-за того, что я довольно плотный :)

Я могу изменить свой link с приведенной ниже строкой кода, но как изменить атрибут, упомянутый выше?

$rss->channel->link = $rssLink; 

Любая помощь будет оценена!

ответ

5
$attrs = $rss->channel->children("atom", true)->link->attributes(); 
$attrs["href"] = "href_value"; 

Пример here.

+0

Большое вам спасибо, я на это надавливал час или около того :) – Gazillion

+0

Ссылка на пример не работает, но спасибо как за ответ, так и за то, как был задан вопрос. Я потратил годы, пытаясь заставить SimpleXml добавить ребенка с именем «atom: link» и не понял, что можно просто начать с него в шаблоне! – xgretsch

Смежные вопросы