PHP Birleştirme NULL olur

2 Cevap php

Bu kodu çalıştırdığınızda, hakkında yarım birleştirme döngü, $ xml boş olur ve birleştirme döngü kalanı boyunca boş kalır. Bu neden oluyor herkes görebilir mi?

$xml = '';
foreach($this->currentColumns['unknown'] as $column => $value)
{
   $xml .= "<columnName>";
   $xml .= $column;
   $xml .= "</columnName>\r\n";
}
return $xml;

2 Cevap

Case $ Bu-> currentColumns (örneğin SimpleXML) ile ayrıştırma bir XML sonucu bir tür, bu dizinin elemanları gerçekten dizeleri olmadığı çok mümkün, ama XmlElement nesneler, ya da yeterince yakın bir şey.

Sizin değişken döküm deneyin, bu yüzden size dizeleri değil, nesneleri catenating emin misin:

$xml = '';
foreach($this->currentColumns['unknown'] as $column => $value)
{
   $xml .= "<columnName>";
   $xml .= (string)$column;  // <--- here is the trick
   $xml .= "</columnName>\r\n";
}
return $xml;

Eğer gitmek gibi $ sütun değerleri yazdırmak zorunda gidiyoruz. Eğer çok beklenmedik bir sütun adı alıyorsanız, bunun için xml dize oluşturmadan önce şartıyla test etmek zorunda kalabilirsiniz.