- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要帮助来获取所有 x
, y
和flags
几乎所有的数字 <coord>
标签如下所示。我不需要 <pattern>
之间的那些标签以及具有 rotation
的标签属性。我似乎无法找到/想出可以返回这些内容的正确 XPath 字符串。
<parts count="1" current="0">
<part name="default part">
<objects count="37">
<object type="1" symbol="166">
<coords count="26">
<coord x="-13110" y="-20755" flags="1"/>
<coord x="-13360" y="-20705"/>
<coord x="-13680" y="-20615"/>
<coord x="-13610" y="-20375" flags="18"/>
</coords>
<pattern rotation="0">
<coord x="0" y="0"/>
</pattern>
</object>
<object type="0" symbol="170" rotation="0">
<coords count="1">
<coord x="-13770" y="-20815"/>
</coords>
</object>
<object type="1" symbol="157">
<coords count="13">
<coord x="-13195" y="-27090" flags="1"/>
<coord x="-13415" y="-25930"/>
<coord x="-13360" y="-25125"/>
</coords>
<pattern rotation="0">
<coord x="0" y="0"/>
</pattern>
</object>
所以我想要的输出是这样的:
-13110 -20755 1
-13360 -20705
-13680 -20615
-13610 -20375 18
-13195 -27090 1
-13415 -25930
-13360 -25125
它必须是 JavaScript 格式的。这是full map
最佳答案
这里是
<?php
class Part{
public $coords;
function __construct(){
$this->coords = array();
}
function addCoordinate(Coord $coord){
$this->coords[] = $coord;
}
}
class Coord{
public $x;
public $y;
public $flags;
}
class XMLCoordsParser{
function parse($xmlString){
$doc = new DOMDocument();
$doc->loadHTML($xmlString);
$xpath = new DOMXPath($doc);
//get all part objects and for each check if the boolean representation of its roatation attribute value is equal to 0 (false), which means it doesn't contain that attribute.
$result = $xpath->query("//parts/part/objects/object[boolean(@rotation)=0]/coords");
$allParts = array();
for($i=0; $i<$result->length; $i++){
$newPart = new Part();
// using the "./" means we start under the given node, which is <coords> tag
$coordsNodeList = $xpath->query("./coord", $result->item($i));
for($j=0; $j<$coordsNodeList->length; $j++){
$newCoord = new Coord();
$coordNodeAttributes = $coordsNodeList->item($j)->attributes;
if($x = $coordNodeAttributes->getNamedItem("x")){
$newCoord->x = $x->nodeValue;
}
if($y = $coordNodeAttributes->getNamedItem("y")){
$newCoord->y = $y->nodeValue;
}
if($flags = $coordNodeAttributes->getNamedItem("flags")){
$newCoord->flags = $flags->nodeValue;
}
$newPart->addCoordinate($newCoord);
}
$allParts[] = $newPart;
}
return $allParts;
}
}
libxml_use_internal_errors(true);
$xmlString = file_get_contents("data2.xml");
$allParts = (new XMLCoordsParser())->parse($xmlString);
var_dump($allParts);
?>
关于javascript - 使用 XPath 获取 xmap 坐标属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40753674/
本文整理了Java中org.nuxeo.common.xmap.XMap.setValueFactory()方法的一些代码示例,展示了XMap.setValueFactory()的具体用法。这些代码示
本文整理了Java中org.nuxeo.common.xmap.XMap.()方法的一些代码示例,展示了XMap.()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Mav
本文整理了Java中org.nuxeo.common.xmap.XMap.register()方法的一些代码示例,展示了XMap.register()的具体用法。这些代码示例主要来源于Github/S
本文整理了Java中org.nuxeo.common.xmap.XMap.load()方法的一些代码示例,展示了XMap.load()的具体用法。这些代码示例主要来源于Github/Stackover
本文整理了Java中org.nuxeo.common.xmap.XMap类的一些代码示例,展示了XMap类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,
我需要帮助来获取所有 x , y和flags几乎所有的数字 标签如下所示。我不需要 之间的那些标签以及具有 rotation 的标签属性。我似乎无法找到/想出可以返回这些内容的正确 XPath 字符
假设有一个 A 类,并且有一个名为 lst 的 A 类实例列表。 假设我们要对列表中的每个实例一遍又一遍地调用类 A 的特定方法 m 数百万次,(实际示例:entity.游戏循环中的 update()
那里有许多很棒的教程和帖子,涵盖了 Lens 更直接的方法,例如Cleaner way to update nested structures ;任何人都可以提供这三种其他方法的示例用途吗?谢谢。 最
我是一名优秀的程序员,十分优秀!