【问题标题】:Extract Last Data Tag from Last XML element using PHP使用 PHP 从最后一个 XML 元素中提取最后一个数据标记
【发布时间】:2014-04-01 11:28:37
【问题描述】:

我有一个 XML 文件,我使用 xpath 来提取最后一个元素。

所以此刻下面这行代码:

    //Get The file from directory
    $xml=simplexml_load_file("docs/03-24-2014.xml");

    //Get last Element
    $last = $xml->xpath("/DocumentElement/Datas[last()]");

输出

array(1) { [0]=> object(SimpleXMLElement)#4 (6) { ["Name"]=> string(12) "COM3-Screen1" ["AdjustMode"]=> string(10) "AutoAdjust" ["Time"]=> string(19) "03-24-2014 11:59:27" ["ScreenBrightnessValues_x0028_0-255_x0029_"]=> string(1) "2" ["AmbientBrightness_x0028_lux_x0029_"]=> string(1) "0" ["BrightnessPercentage"]=> string(2) "0%" } }

目标

我试图实现的是提取最后一个名为“BrightnessPercentage”的数据标签并将其存储在一个字符串中

我试过echo $last->BrightnessPercentage .;,但没用!

感谢您的帮助

【问题讨论】:

  • echo $last[0]->BrightnessPercentage ;
  • Namaste.. 所以它起作用了!!
  • 是的,它工作得很好;)

标签: php xml xpath xml-parsing


【解决方案1】:

要直接从xpath 获取该属性作为字符串,请执行以下操作:

$brightness = (string)$xml->xpath("/DocumentElement/Datas[last()]/@BrightnessPercentage")[0];

需要 PHP >= 5.4。如果您使用的是较低版本,请执行以下操作:

$brightness = $xml->xpath("/DocumentElement/Datas[last()]/@BrightnessPercentage");
$brightness = (string)$brightness[0];

【讨论】:

    猜你喜欢
    • 2020-05-01
    • 2017-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-02
    相关资源
    最近更新 更多