$namex = $xml->xpath("//a[@b=foo]/c");
$name = $namex[0];
echo $name;
它的工作原理,作爲第一行創建一個數組,而第二行顯示的第一個條目。有沒有辦法將這兩條線結合起來以獲得預期結果?
$namex = $xml->xpath("//a[@b=foo]/c");
$name = $namex[0];
echo $name;
它的工作原理,作爲第一行創建一個數組,而第二行顯示的第一個條目。有沒有辦法將這兩條線結合起來以獲得預期結果?
您可以使用list
:
list($name) = $xml->xpath("//a[@b=foo]/c");
很好的使用'list()',但他們仍然需要'echo'。所以不是真正的單線。 –
對不起@JasonMcCreary沒有讓我自己清楚,'回聲'線是爲了測試。這是我正在尋找的! – user1952748
@ user1952748,不用擔心。在那種情況下,+。 –
有沒有辦法將兩條線結合起來以獲得預期的結果?
是的,沒有...
PHP 5.4+:
echo $xml->xpath("//a[@b=foo]/c")[0]; // array dereferencing, yay!
PHP < 5.4:
$names = $xml->xpath("//a[@b=foo]/c");
echo $names[0];
謝謝!不幸的是,這是在PHP 5.3中運行:D – user1952748
不用擔心。如果您需要其他值,您將不想使用數組解引用,因爲您必須重新運行此方法。 –
的可能重複的[PHP的SimpleXMLElement獲得第一元件在一行中(http://stackoverflow.com/questions/2815639/php-simplexmlelement-get-first-element-in-one-line) – hakre
推薦閱讀:[解析函數結果的PHP語法](http://stackoverflow.com/q/742764/367456) – hakre