/** * Remove Directus-managed virtual/alias fields from the table schema array * and return them as a separate array. * @param array $schema Table schema array. * @return array Alias fields */ public function filterSchemaAliasFields(&$schema) { $alias_fields = []; foreach ($schema as $i => $col) { // Is it a "virtual"/alias column? if (TableSchema::isColumnAnAlias($col)) { // Remove them from the standard schema unset($schema[$i]); $alias_fields[] = $col; } } return $alias_fields; }