mini\Table\AbstractTable abstract class

Documentation

Base class for all table implementations

Provides:

  • Centralized order() parsing into OrderDef[]
  • Centralized limit/offset handling
  • String collation function for sorting (locale-aware by default)
  • Default union() and except() returning wrapper types

Inheritance

Implements: mini\Table\Contracts\TableInterface Traversable Countable IteratorAggregate mini\Table\Contracts\SetInterface

Uses Traits: mini\Table\Utility\TablePropertiesTrait

Properties (7)

private readonly array $columnDefs
private array $visibleColumns
protected ?Closure $compareFn
protected ?int $limit
protected int $offset
private mini\Table\ColumnDef|false|null $primaryKeyColumn
private array $props

Methods (37)

Documentation missing

Hook for subclasses to customize clone behavior

Get column name(s) that the row key represents

Get the string comparison function for sorting

Apply ordering to the table

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Get the current table alias (null if not set)

Documentation missing

Documentation missing

Documentation missing

Filter rows matching any of the given predicates (OR semantics)

Apply a Predicate to this table

Documentation missing

Check if value(s) exist in the table's projected columns

Get the primary key column definition (cached)

Find a column with a unique index (Primary or Unique)

Materialize function is needed to facilitate AbstractTableWrapper and other logic that

Iterate over rows with visible columns only

Get columns available for output

Get all column definitions regardless of projection

Narrow to specific columns

Load a single row by its row ID

Get a property value

Check if a property exists (including null values)

Return table with property set

Filter rows where column equals value (NULL uses IS NULL semantics)

Filter rows where column is less than value

Filter rows where column is less than or equal to value

Filter rows where column is greater than value

Filter rows where column is greater than or equal to value

Filter rows where column value is in the given set

Filter rows where column matches a LIKE pattern

Documentation missing

Source

src/Table/AbstractTable.php:27-432