• Модуль: support
  • Путь к файлу: ~/bitrix/modules/support/classes/general/tablefields.php
  • Класс: CSupportTableFields
  • Вызов: CSupportTableFields::ToArray
public function ToArray($fields = self::ALL, $notNull = array(), $forSQL = false, $row = null)  //getArr
{
	$row = $this->checkRow($row);
	$res = array();		
	$arFields = CSupportTools::prepareParamArray($fields, array_keys($this->_arFields[$row]));
	foreach($arFields as $key => $name)
	{
		$fName = is_int($key) ? $name : $key;
		if(!array_key_exists($fName, $this->_arFieldsTypes)) continue;
		$v = $this->_arFields[$row][$fName];
		$ft = $this->_arFieldsTypes[$fName];
		if(in_array(self::ONLY_CHANGED, $notNull) && (!isset($this->_arModifiedFields[$row][$fName]) || $this->_arModifiedFields[$row][$fName] != true))
		{
			continue;
		}
		elseif(in_array(self::NOT_NULL, $notNull) && $v === null)
		{
			continue;
		}
		elseif(in_array(self::NOT_DEFAULT, $notNull) && $v === $ft["DEF_VAL"])
		{
			continue;
		}
		if($forSQL)
		{
			if(array_key_exists("AUTO_CALCULATED", $ft)) continue;
			$res[$name] = self::ConvertForSQL($ft["TYPE"], $v);
		}
		else $res[$name] = $v;
	}
	return $res;
}