• Модуль: mail
  • Путь к файлу: ~/bitrix/modules/mail/lib/imap/bodystructure.php
  • Класс: BitrixMailImapBodyStructure
  • Вызов: BodyStructure::traverse
public function traverse(callable $callback, $flat = false)
{
	$items = array();

	if ($this->isMultipart)
	{
		for ($i = 0; $i < $this->partsCount; $i++)
		{
			$items[] = $this->data[0][$i]->traverse($callback, $flat);
		}
	}

	$result = array($callback($this, $items));

	if ($flat)
	{
		$result = array_merge($result, ...$items);
	}
	else
	{
		$result[] = $items;
	}

	return $result;
}