簡體   English   中英

為什么在使用-> value(php / xpath / xml查詢)后得到null?

[英]Why do I get null after using ->value (php / xpath / xml query)?

我查詢了我的xml文件。 我現在想將結果(id)保存到json文件中。

問題是我得到了:

“用戶”:{“ 0”:“邁克爾”}

但是我需要:

“用戶”:“邁克爾”

我使用的代碼是:

$ids = [];

$idAttributes = $xmlfile->xpath("myquery...");
foreach ($idAttributes as $idAttribute) {

    $ids[] = $idAttribute[0]; 
}

print_r("My output : " . $ids[0]);

$user1 = $ids[0];
$user2 = $ids[1];
$user3 = $ids[2];

我也嘗試了$ idAttribute-> value。 為了只獲取可以保存到json的名稱。 但是我只能得到null ...當我打印id時。 我以正確的方式獲取它,例如“ Tom”。 如何僅將其保存為“ Tom”而不保存為“ user”:{“ 0”:“ Michael”}?

UPDATE

IDs var_dump: 

string(14) "The IDS: Array" string(19) " 

ID i : " string(14) "The IDS: Array" string(19) " 
ID i : " string(14) "The IDS: Array" string(19) " 
ID i : " 

My output : Bill

字符串(string) $idAttribute[0];(string) $idAttribute[0];

$ids = [];

$idAttributes = $xmlfile->xpath("myquery...");
foreach ($idAttributes as $idAttribute) {

    $ids[] = (string) $idAttribute[0]; 
}

print_r("My output : " . $ids[0]);

$user1 = $ids[0];
$user2 = $ids[1];
$user3 = $ids[2];

SimpleXML中的每個節點都是一個對象。 它具有__toString方法將其轉換為字符串。

如果對那個對象使用print / echo :它也會顯示“字符串”值,而不是當前的真實狀態,是一個對象。 使用print_rvar_dump可以正確查看它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM