好的,所以我通过shopify webhook测试中的webhook获得了我的网络服务器订单文件夹中的order09-05-12-1346847709.xml文件,该文件看起来像
............................................... .....
<processing-method nil="true"></processing-method>
<line-items type="array">
<line-item>
<requires-shipping type="boolean">true</requires-shipping>
<fulfillment-service>manual</fulfillment-service>
<grams type="integer">5000</grams>
<price type="decimal">199.99</price>
<quantity type="integer">1</quantity>
<sku>SKU2006-001</sku>
<title>Sledgehammer</title>
<product-id type="integer" nil="true"></product-id>
<variant-id type="integer" nil="true"></variant-id>
<vendor nil="true"></vendor>
<variant-title nil="true"></variant-title>
<fulfillment-status nil="true"></fulfillment-status>
<name>Sledgehammer</name>
<variant-inventory-management nil="true"></variant-inventory-management>
<properties type="array">
</properties>
</line-item>
<line-item>
<requires-shipping type="boolean">true</requires-shipping>
<fulfillment-service>manual</fulfillment-service>
<grams type="integer">500</grams>
<price type="decimal">29.95</price>
<quantity type="integer">1</quantity>
<sku>SKU2006-020</sku>
<title>Wire Cutter</title>
<product-id type="integer" nil="true"></product-id>
<variant-id type="integer" nil="true"></variant-id>
<vendor nil="true"></vendor>
<variant-title nil="true"></variant-title>
<fulfillment-status nil="true"></fulfillment-status>
<name>Wire Cutter</name>
<variant-inventory-management nil="true"></variant-inventory-management>
<properties type="array">
</properties>
</line-item>
</line-items>
............................................... .........................
我所需要的只是选择“sku和qty”值,所以我可以自动更新到我的ms sql server的数据我如何使用php这样做我的意思是我知道如何使用sqlsrv连接到sql server而不是知道php代码来选择特定字段的值并将值放到sql server
我现在绝望了......非常感谢你们提前
答案 0 :(得分:0)
以下是一些PHP代码,它为XML文档中的每个项目提取sku
和quantity
值(它不是搜索特定信息的最佳/最好/最强大的方法) XML文档,但它的工作原理)。由于您没有告诉我们您希望如何将它们插入数据库中,因此我无法做更多的事情。
Here是关于PHP文档对象模型接口的文档,它允许操作XML文档。请看一下。
$dom = new DomDocument();
$dom->load('order09-05-12-1346847709.xml');
$itemList = $dom->getElementsByTagName('line-item');
foreach($itemList as $item) {
$sku='';
$qty='';
foreach($item->childNodes as $child) {
if ($child->localName == 'sku') {
$sku = $child->textContent;
}
if ($child->localName == 'quantity') {
$qty = $child->textContent;
}
}
echo 'Item SKU: ' . $sku . '<br />';
echo 'Item quantity: ' . $qty . '<br />';
// cast to integer: intval($qty)
echo '<br />';
}