我查询了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”}?
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
答案 0 :(得分:1)
字符串将值转换为(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_r
或var_dump
正确查看。