にこのスニペットを渡すために、私はこのコードのスニペットがありますどのように機能
XMLツリーの一部のノードを表し$xml->items->item
を...私は木のこの表現を渡すことができるようにしたいです私は共通の関数でわずかに異なるxmlツリーを処理することができます。問題は、私はそれを渡す方法がわからない...私は文字列としてそれを渡して、私はそれを渡している関数内でそれをunserializingしようとしたが、それは動作しません....任意のアイデアですか?
にこのスニペットを渡すために、私はこのコードのスニペットがありますどのように機能
XMLツリーの一部のノードを表し$xml->items->item
を...私は木のこの表現を渡すことができるようにしたいです私は共通の関数でわずかに異なるxmlツリーを処理することができます。問題は、私はそれを渡す方法がわからない...私は文字列としてそれを渡して、私はそれを渡している関数内でそれをunserializingしようとしたが、それは動作しません....任意のアイデアですか?
は、たぶん私はポイントを逃していますが、「私は、共通の関数に木のこの表現を渡すことができるようにしたい」 - その後、単にそれを通過しない...
<?php
function foo(SimpleXMLElement $r) {
foreach($r as $e) {
printf('[%s; %s; %s] ', $e->x, $e->y, $e->z);
}
echo "\n";
}
$xml = getDoc();
// the <a><b> subtree
foo($xml->b->items->item);
echo "---------------------\n";
// same function for the the <a><c> subtree
foo($xml->c->items->item);
function getDoc() {
return new SimpleXMLElement(<<< eox
<a>
<b>
<items>
<item><x>10</x><y>11</y><z>12</z></item>
<item><x>20</x><y>21</y><z>22</z></item>
</items>
</b>
<c>
<items>
<item><x>99</x><y>98</y><z>97</z></item>
<item><x>96</x><y>95</y><z>94</z></item>
</items>
</c>
</a>
eox
);
プリント
[10; 11; 12] [20; 21; 22]
---------------------
[99; 98; 97] [96; 95; 94]
$xml->items->item->nodeValue
として渡してみましたか? 私はこれをphp.netから得ました。
$xml->items
と "item"という文字列を渡します。次に、各アイテムについて、「アイテム」プロパティを解析します。
あなたは何も欠けていませんでしたが、私はそれを試したと確信しています、それは最初にエラーが発生しました。 –