相关疑难解决方法(0)

2071
推荐指数
28
解决办法
40万
查看次数

PHP DOMDocument获取Tag的属性

您好我有一个xml格式的api响应,其中包含以下一系列项:

<item>
<title>blah balh</title>
<pubDate>Tue, 20 Oct 2009 </pubDate>
<media:file  date="today" data="example text string"/>
</item>
Run Code Online (Sandbox Code Playgroud)

我想使用DOMDocument从标签"media:file"获取属性"data".我在下面的尝试不起作用:

$xmldoc = new DOMDocument();
$xmldoc->load('api response address');
foreach ($xmldoc->getElementsByTagName('item') as $feeditem) {
$nodes = $feeditem->getElementsByTagName('media:file');
$linkthumb = $nodes->item(0)->getAttribute('data');
}
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?请帮忙.

编辑:我不能因某些原因留下评论马克.我收到了错误

 Call to a member function getAttribute() on a non-object
Run Code Online (Sandbox Code Playgroud)

当我运行我的代码.我也试过了

$nodes = $feeditem->getElementsByTagNameNS('uri','file');
$linkthumb = $nodes->item(0)->getAttribute('data');
Run Code Online (Sandbox Code Playgroud)

其中uri是与媒体名称空间(NS)相关的uri,但同样是同样的问题.

请注意,媒体元素的形式并不是我认为这是问题的一部分,因为我通常没有解析问题的问题.

php parsing dom xml-namespaces domdocument

8
推荐指数
1
解决办法
3万
查看次数

如何使用SimpleXML获取属性?

我正在使用simplexml_load_file($path_xml_file),它运作良好!

如果我这样print_r($xml)打印:

SimpleXMLElement Object
(
    [@attributes] => Array
        (
            [Message] => Login Successful
            [Token] => 11111111111
            [DataFormat] => CSV

        )
)
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得"令牌"价值?

谢谢!

php simplexml

7
推荐指数
0
解决办法
7314
查看次数

从 &lt;content:encoded&gt; 获取图像 src

我试图从中获取一个 img url<content:encoded>并将该 url 插入到我的数据库中

但我似乎无法从 xml 文件中获得正确的信息-

还是无法使用 simpleXML 检索数据?

这是我的 XML

<item>
  <title>Movietitle</title>
  <content:encoded><![CDATA[<p>
    <img class="aligncenter  wp-image-22085" src="movie-poster-694x1024.jpg" alt="Predestination 2014" width="475" height="701" /></p>
    <p><span id="more-22087"></span></p>
    <p>
    <a href="http://bit.ly/1za5mIz" target="_blank">
    <h4 style="text-align: left;">Release Info:</h4>
    Genre: Sci-Fi, Thriller<br />
    Quality: DVDRip<br />
    Language: English</p>]]>
    </content:encoded>
</item>
Run Code Online (Sandbox Code Playgroud)

PHP

$feeds = array('http://xxxx.xml');
foreach( $feeds as $feed ) {

    $xml = simplexml_load_file($feed);

    foreach($xml->channel->item as $item) {

        $video_title = $item->title;
        $video_img=(string) $item->children($ns['content']);


        $sql = "INSERT INTO video (video_title, video_img, video_date) VALUES (:video_title, …
Run Code Online (Sandbox Code Playgroud)

php xml simplexml

2
推荐指数
1
解决办法
3491
查看次数