PHPのsimplexml_load_file関数を使用した後、データを保存するのに問題があります。私はSimpleXML Objectを使いたいと思っています。もしデータがrequiermentsを満たしていれば、それを配列に入れたいと思います。問題は、フィールドの値を得ることができないということです。それが意味を成すなら、オブジェクト全体を常に通り過ぎるようです。PHPのシンプルなXMLの問題
ここに私のコード
echo $allProducts->product[1]->sku."<br/>";
echo $allProducts->product[1]->title."<br/>";
echo $allProducts->product[1]->price."<br/>";
$products["041132"]['sku'] = $allProducts->product[1]->sku;
$products["041132"]['title'] = $allProducts->product[1]->title;
$products["041132"]['price'] = $allProducts->product[1]->price;
print_r($products);
そして、私の出力:
041132
Audrey Dining Chair
195.00
Array ([041132] => Array (
[sku] => SimpleXMLElement Object ([0] => 041132)
[title] => SimpleXMLElement Object ([0] => Audrey Dining Chair)
[price] => SimpleXMLElement Object ([0] => 195.00))
)
私が保存したいすべてが実際の値です。それ、どうやったら出来るの?ここでは参考のため
は私のXMLのサンプルです:
<products>
<product>
<sku>934896</sku>
<title>Savannah Barstool</title>
<price>475.00</price>
</product>
<product>
<sku>041132</sku>
<title>Audrey Dining Chair</title>
<price>195.00</price>
</product>
</products>
実際には、$ products ["041132"] ['sku'] =(整数)$ allProducts-> product [1] - > sku;のようにキャストできます。 – prodigitalson
また、strvalも使用できます。前述のゼロのためにstrvalをすべて使用することを実際に示唆し、ストリングはそのまま使用すると簡単に整数に変換されます。 :) – mseancole
私は何かをキャストしなければならなかったので、それはしばらくありました。ありがとう! – BFTrick