private function getNamespacePrefixes()
{
$prefixes = array();
// Get all tag names from channel elements...
$tags = array_keys($this->channels);
// ... and now all names from feed items
foreach ($this->items as $item) {
foreach (array_keys($item->getElements()) as $key) {
if (!in_array($key, $tags)) {
$tags[] = $key;
}
}
}
// Look for prefixes in those tag names
foreach ($tags as $tag) {
$elements = explode(':', $tag);
if (count($elements) != 2) {
continue;
}
$prefixes[] = $elements[0];
}
return array_unique($prefixes);
}