我正在尝试为MWS做一些Feed提交。
我有一个需要拨打电话的数据库。
dbCall函数和$ sql是从客户数据库调用变量的sql。
$var = dbCall($sql);
for ($x = 0; $x < 1; $x++ )
{
feed[] = "<Message>
<MessageID>".$messageID."</MessageID>
<OperationType>Update</OperationType>
<Product>
<SKU>book_".$var[$x]."</SKU>
<StandardProductID>
<Type>ASIN</Type>
<Value>".$var[$x]."</Value>
</StandardProductID>
<Condition>
<ConditionType>New</ConditionType>
<ConditionNote>Brand New! Never used!</ConditionNote>
</Condition>
</Product>
</Message>";
$messageID = $messageID + 1;
}
$total_feed = implode(" ", $feed);
$final_feed = '<?xml version="1.0" encoding="utf-8"?>
<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amznenvelope.xsd">
<Header>
<DocumentVersion>1.01</DocumentVersion>
<MerchantIdentifier>'.$merch_id.'</MerchantIdentifier>
</Header>
<MessageType>Product</MessageType>
<PurgeAndReplace>false</PurgeAndReplace>' .$total_feed.'</AmazonEnvelope>');
`
当我跑这个;我收到了字符串,但有些标签没有正确对齐(请参阅SKU和值)。
如何从数据库变量中获取XML输出?
编辑: 当我打印implode(“”,$ feed)的输出时 - 我的所有标签看起来都是小写的,但如果我使用htmlspecialchars或htmlentities,我会以正确的格式获取它们。
<message> instead of <Message>
答案 0 :(得分:0)
使用trim正确调整了xml。