Откуда исходит значение null в этом массиве? - PullRequest
2 голосов
/ 07 марта 2012

Я конвертирую массив 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, однако в самом конце добавляется ноль, и я думаю, что это вызывает у меня другие проблемы,Так, например, в нижней части xml, который выводится, это выглядит так:

  </ITEM>
</DATA>
null

Это нулевое значение исходит из исходного массива, который я вижу, если я делаю:

print_r($bigArray)

Iувидеть что-то вроде:

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 голосов
/ 07 марта 2012

Класс Mage_Core_Model_Abstract вызывает проблему или другой класс выше, который выводит нулевое значение.

Попробуйте выполнить его, используя Xdebug в Netbeans, и посмотрите, что вызывает нулевое значение.Мне интересно увидеть результат.

HTH

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...