来自此数组的null在哪里?

时间:2012-03-06 21:38:36

标签: php xml magento

我正在将php数组转换为xml,如下所示:

$bigArray = $readConnection->fetchAll($query);

  $doc = new DOMDocument();
  $doc->formatOutput = true;       
  $r = $doc->createElement( "DATA" );
  $doc->appendChild( $r );     
  foreach( $bigArray as $product )
  {
    $b = $doc->createElement( "ITEM" );        
    $product_type = $doc->createElement( "PRODUCT_TYPE" );
    $product_type->appendChild(
    $doc->createTextNode( $product['ProductType'] )
    );
    $b->appendChild( $product_type ); 
    $sku = $doc->createElement( "SKU" );
    $sku->appendChild(
    $doc->createTextNode( $product['SKU'] )
    );
    $b->appendChild( $sku ); 
    $r->appendChild( $b );
   }

  echo $doc->saveXML();

这会返回一个xml文档,但最后会追加null,我认为这是导致我其他问题的原因。因此,例如在输出的xml的底部,它看起来像:

  </ITEM>
</DATA>
null

这个空值来自我看到的原始数组:

print_r($bigArray)

我看到类似的东西:

Array ( [0] => Array ( [ProductType] => simple [SKU] => 09423100010018 ) [1] => Array ( [ProductType] => simple [SKU] => 14552300010002 )) null

我从一个像magento这样的课程中调用它:

class Foo_Model_Queryone extends Mage_Core_Model_Abstract
{

    public function pprQuery() {
    $resource = Mage::getSingleton('core/resource');    
    $readConnection = $resource->getConnection('core_read');    
    $query = ("SELECT cpe.type_id AS 'ProductType',
      cpe.sku AS 'SKU',
      .....

1 个答案:

答案 0 :(得分:0)

类Mage_Core_Model_Abstract导致输出空值的问题或更高级别的其他类。

尝试在Netbeans中使用Xdebug逐步执行它,并查看导致null值的原因。我有兴趣看到结果。

HTH