Flow PHP

functions.php

Functions

from_rows()

from_rows(Rows ...$rows) : RowsExtractor
Parameters
$rows : Rows
Return values
RowsExtractor

from_array()

from_array(iterable<string|int, mixed> $array[, null|Schema $schema = null ]) : ArrayExtractor
Parameters
$array : iterable<string|int, mixed>
$schema : null|Schema = null
  • @deprecated use withSchema() method instead
Return values
ArrayExtractor

from_cache()

from_cache(string $id[, null|Extractor $fallback_extractor = null ][, bool $clear = false ]) : CacheExtractor
Parameters
$id : string
  • cache id from which data will be extracted
$fallback_extractor : null|Extractor = null
  • extractor that will be used when cache is empty - @deprecated use withFallbackExtractor() method instead
$clear : bool = false
  • clear cache after extraction - @deprecated use withClearOnFinish() method instead
Return values
CacheExtractor

filesystem_cache()

filesystem_cache([Path|string|null $cache_dir = null ][, Filesystem $filesystem = new NativeLocalFilesystem() ][, Serializer $serializer = new NativePHPSerializer() ]) : FilesystemCache
Parameters
$cache_dir : Path|string|null = null
$filesystem : Filesystem = new NativeLocalFilesystem()
$serializer : Serializer = new NativePHPSerializer()
Return values
FilesystemCache

from_sequence_date_period()

from_sequence_date_period(string $entry_name, DateTimeInterface $start, DateInterval $interval, DateTimeInterface $end[, int $options = 0 ]) : SequenceExtractor
Parameters
$entry_name : string
$start : DateTimeInterface
$interval : DateInterval
$end : DateTimeInterface
$options : int = 0
Return values
SequenceExtractor

from_sequence_date_period_recurrences()

from_sequence_date_period_recurrences(string $entry_name, DateTimeInterface $start, DateInterval $interval, int $recurrences[, int $options = 0 ]) : SequenceExtractor
Parameters
$entry_name : string
$start : DateTimeInterface
$interval : DateInterval
$recurrences : int
$options : int = 0
Return values
SequenceExtractor

from_sequence_number()

from_sequence_number(string $entry_name, string|int|float $start, string|int|float $end[, int|float $step = 1 ]) : SequenceExtractor
Parameters
$entry_name : string
$start : string|int|float
$end : string|int|float
$step : int|float = 1
Return values
SequenceExtractor

to_array()

Convert rows to an array and store them in passed array variable.

to_array(array<string|int, mixed> &$array) : ArrayLoader
Parameters
$array : array<string|int, mixed>
Tags
param-out

array<array> $array

Return values
ArrayLoader

to_stream()

to_stream(string $uri[, int|bool $truncate = 20 ][, Output $output = Output::rows ][, string $mode = 'w' ][, Formatter $formatter = new AsciiTableFormatter() ][, SchemaFormatter $schemaFormatter = new ASCIISchemaFormatter() ]) : StreamLoader
Parameters
$uri : string
$truncate : int|bool = 20
$output : Output = Output::rows
$mode : string = 'w'
$formatter : Formatter = new AsciiTableFormatter()
$schemaFormatter : SchemaFormatter = new ASCIISchemaFormatter()
Return values
StreamLoader

datetime_entry()

datetime_entry(string $name, DateTimeInterface|string|null $value[, Metadata|null $metadata = null ]) : DateTimeEntry
Parameters
$name : string
$value : DateTimeInterface|string|null
$metadata : Metadata|null = null
Return values
DateTimeEntry

time_entry()

time_entry(string $name, DateInterval|string|null $value[, Metadata|null $metadata = null ]) : TimeEntry
Parameters
$name : string
$value : DateInterval|string|null
$metadata : Metadata|null = null
Return values
TimeEntry

date_entry()

date_entry(string $name, DateTimeInterface|string|null $value[, Metadata|null $metadata = null ]) : DateEntry
Parameters
$name : string
$value : DateTimeInterface|string|null
$metadata : Metadata|null = null
Return values
DateEntry

enum_entry()

enum_entry(string $name, UnitEnum|null $enum[, Metadata|null $metadata = null ]) : EnumEntry
Parameters
$name : string
$enum : UnitEnum|null
$metadata : Metadata|null = null
Return values
EnumEntry

float_entry()

float_entry(string $name, float|int|string|null $value[, Metadata|null $metadata = null ]) : FloatEntry
Parameters
$name : string
$value : float|int|string|null
$metadata : Metadata|null = null
Return values
FloatEntry

json_entry()

json_entry(string $name, array<string|int, mixed>|string|null $data[, Metadata|null $metadata = null ]) : JsonEntry
Parameters
$name : string
$data : array<string|int, mixed>|string|null
$metadata : Metadata|null = null
Return values
JsonEntry

null_entry()

This functions is an alias for creating string entry from null.

null_entry(string $name[, Metadata|null $metadata = null ]) : StringEntry

The main difference between using this function an simply str_entry with second argument null is that this function will also keep a note in the metadata that type might not be final. For example when we need to guess column type from rows because schema was not provided, and given column in the first row is null, it might still change once we get to the second row. That metadata is used to determine if string_entry was created from null or not.

By design flow assumes when guessing column type that null would be a string (the most flexible type).

Parameters
$name : string
$metadata : Metadata|null = null
Return values
StringEntry

uuid_entry()

uuid_entry(string $name, Uuid|string|null $value[, Metadata|null $metadata = null ]) : UuidEntry
Parameters
$name : string
$value : Uuid|string|null
$metadata : Metadata|null = null
Return values
UuidEntry

xml_entry()

xml_entry(string $name, DOMDocument|string|null $value[, Metadata|null $metadata = null ]) : XMLEntry
Parameters
$name : string
$value : DOMDocument|string|null
$metadata : Metadata|null = null
Return values
XMLEntry

struct_entry()

struct_entry(string $name, array<string|int, mixed>|null $value, StructureType<string|int, T$type[, Metadata|null $metadata = null ]) : StructureEntry<string|int, T>
Parameters
$name : string
$value : array<string|int, mixed>|null
$type : StructureType<string|int, T>
$metadata : Metadata|null = null
Tags
template
Return values
StructureEntry<string|int, T>

structure_entry()

structure_entry(string $name, array<string|int, mixed>|null $value, StructureType<string|int, T$type[, Metadata|null $metadata = null ]) : StructureEntry<string|int, T>
Parameters
$name : string
$value : array<string|int, mixed>|null
$type : StructureType<string|int, T>
$metadata : Metadata|null = null
Tags
template
Return values
StructureEntry<string|int, T>

type_structure()

please use \Flow\Types\DSL\type_structure(array $elements) instead

type_structure(T $elements) : StructureType<string|int, T>
Parameters
$elements : T
Tags
template
Return values
StructureType<string|int, T>

type_union()

please use \Flow\Types\DSL\type_union(Type $first, Type $second, Type ...$types) : UnionType

type_union(Type<string|int, T$first, Type<string|int, T$second, Type<string|int, T...$types) : UnionType<T, T>
Parameters
$first : Type<string|int, T>
$second : Type<string|int, T>
$types : Type<string|int, T>
Tags
template
Return values
UnionType<T, T>

type_optional()

please use \Flow\Types\DSL\type_optional(Type $type) : OptionalType

type_optional(Type<string|int, T$type) : OptionalType<string|int, T>
Parameters
$type : Type<string|int, T>
Tags
template
Return values
OptionalType<string|int, T>

type_from_array()

please use \Flow\Types\DSL\type_from_array(array $data) : Type

type_from_array(array<string|int, mixed> $data) : Type<string|int, mixed>
Parameters
$data : array<string|int, mixed>
Return values
Type<string|int, mixed>

is_nullable()

please use \Flow\Types\DSL\is_nullable(Type $type) : bool

is_nullable(Type<string|int, mixed> $type) : bool
Parameters
$type : Type<string|int, mixed>
Return values
bool

type_equals()

please use \Flow\Types\DSL\type_equals(Type $left, Type $right) : bool

type_equals(Type<string|int, TLeft$left, Type<string|int, TRight$right) : bool
Parameters
$left : Type<string|int, TLeft>
$right : Type<string|int, TRight>
Tags
template
template
Return values
bool

types()

please use \Flow\Types\DSL\types(Type ...$types) : Types

types(Type<string|int, mixed> ...$types) : Types
Parameters
$types : Type<string|int, mixed>
Return values
Types

list_entry()

list_entry(string $name, array<int, mixed>|null $value, ListType<string|int, T$type[, Metadata|null $metadata = null ]) : ListEntry
Parameters
$name : string
$value : array<int, mixed>|null
$type : ListType<string|int, T>
$metadata : Metadata|null = null
Tags
template
Return values
ListEntry

type_list()

please use \Flow\Types\DSL\type_list(Type $element) : ListType

type_list(Type<string|int, T$element) : ListType<string|int, T>
Parameters
$element : Type<string|int, T>
Tags
template
Return values
ListType<string|int, T>

type_map()

please use \Flow\Types\DSL\type_map(StringType|IntegerType $key_type, Type $value_type) : MapType

type_map(StringType|IntegerType $key_type, Type<string|int, T$value_type) : MapType<string|int, T>
Parameters
$key_type : StringType|IntegerType
$value_type : Type<string|int, T>
Tags
template
Return values
MapType<string|int, T>

map_entry()

map_entry(string $name, array<string|int, mixed>|null $value, MapType<TKey, TValue$mapType[, Metadata|null $metadata = null ]) : MapEntry
Parameters
$name : string
$value : array<string|int, mixed>|null
$mapType : MapType<TKey, TValue>
$metadata : Metadata|null = null
Tags
template
template
Return values
MapEntry

type_json()

please use \Flow\Types\DSL\type_json() : JsonType

type_json() : JsonType
Return values
JsonType

type_datetime()

please use \Flow\Types\DSL\type_datetime() : DateTimeType

type_datetime() : DateTimeType
Return values
DateTimeType

type_date()

please use \Flow\Types\DSL\type_date() : DateType

type_date() : DateType
Return values
DateType

type_time()

please use \Flow\Types\DSL\type_time() : TimeType

type_time() : TimeType
Return values
TimeType

type_xml()

please use \Flow\Types\DSL\type_xml() : XMLType

type_xml() : XMLType
Return values
XMLType

type_xml_element()

please use \Flow\Types\DSL\type_xml_element() : XMLElementType

type_xml_element() : XMLElementType
Return values
XMLElementType

type_uuid()

please use \Flow\Types\DSL\type_uuid() : UuidType

type_uuid() : UuidType
Return values
UuidType

type_int()

please use \Flow\Types\DSL\type_integer() : IntegerType

type_int() : IntegerType
Return values
IntegerType

type_integer()

please use \Flow\Types\DSL\type_integer() : IntegerType

type_integer() : IntegerType
Return values
IntegerType

type_string()

please use \Flow\Types\DSL\type_string() : StringType

type_string() : StringType
Return values
StringType

type_float()

please use \Flow\Types\DSL\type_float() : FloatType

type_float() : FloatType
Return values
FloatType

type_boolean()

please use \Flow\Types\DSL\type_boolean() : BooleanType

type_boolean() : BooleanType
Return values
BooleanType

type_instance_of()

please use \Flow\Types\DSL\type_instance_of(string $class) : InstanceOfType

type_instance_of(T> $class) : InstanceOfType<string|int, T>
Parameters
$class : T>
Tags
template
Return values
InstanceOfType<string|int, T>

type_resource()

please use \Flow\Types\DSL\type_resource() : ResourceType

type_resource() : ResourceType
Return values
ResourceType

type_array()

please use \Flow\Types\DSL\type_array() : ArrayType

type_array() : ArrayType
Return values
ArrayType

type_callable()

please use \Flow\Types\DSL\type_callable() : CallableType

type_callable() : CallableType
Return values
CallableType

type_null()

please use \Flow\Types\DSL\type_null() : NullType

type_null() : NullType
Return values
NullType

type_enum()

please use \Flow\Types\DSL\type_enum(string $class) : EnumType

type_enum(T> $class) : EnumType<string|int, T>
Parameters
$class : T>
Tags
template
Return values
EnumType<string|int, T>

rows_partitioned()

rows_partitioned(array<string|int, mixed> $rows, array<string|int, mixed>|Partitions $partitions) : Rows
Parameters
$rows : array<string|int, mixed>
$partitions : array<string|int, mixed>|Partitions
Return values
Rows

when()

when(mixed $condition, mixed $then[, mixed $else = null ]) : When
Parameters
$condition : mixed
$then : mixed
$else : mixed = null
Return values
When

cast()

cast(mixed $value, Type<string|int, mixed>|string $type) : Cast
Parameters
$value : mixed
$type : Type<string|int, mixed>|string
Return values
Cast

call()

Calls a user-defined function with the given parameters.

call(callable|ScalarFunction $callable[, array<string|int, mixed> $parameters = [] ][, null|Type<string|int, mixed> $return_type = null ]) : CallUserFunc
Parameters
$callable : callable|ScalarFunction
$parameters : array<string|int, mixed> = []
$return_type : null|Type<string|int, mixed> = null
Return values
CallUserFunc

array_unpack()

Unpacks each element of an array into a new entry, using the array key as the entry name.

array_unpack(ScalarFunction|array<string|int, mixed> $array[, ScalarFunction|array<string|int, mixed> $skip_keys = [] ][, ScalarFunction|string|null $entry_prefix = null ]) : ArrayUnpack

Before: +--+-------------------+ |id| array| +--+-------------------+ | 1|{"a":1,"b":2,"c":3}| | 2|{"d":4,"e":5,"f":6}| +--+-------------------+

After: +--+-----+-----+-----+-----+-----+ |id|arr.b|arr.c|arr.d|arr.e|arr.f| +--+-----+-----+-----+-----+-----+ | 1| 2| 3| | | | | 2| | | 4| 5| 6| +--+-----+-----+-----+-----+-----+

Parameters
$array : ScalarFunction|array<string|int, mixed>
$skip_keys : ScalarFunction|array<string|int, mixed> = []
$entry_prefix : ScalarFunction|string|null = null
Return values
ArrayUnpack

array_expand()

Expands each value into entry, if there are more than one value, multiple rows will be created.

array_expand(ScalarFunction $function[, ArrayExpand $expand = ArrayExpand::VALUES ]) : ArrayExpand

Array keys are ignored, only values are used to create new rows.

Before: +--+-------------------+ |id| array| +--+-------------------+ | 1|{"a":1,"b":2,"c":3}| +--+-------------------+

After: +--+--------+ |id|expanded| +--+--------+ | 1| 1| | 1| 2| | 1| 3| +--+--------+

Parameters
$function : ScalarFunction
$expand : ArrayExpand = ArrayExpand::VALUES
Return values
ArrayExpand

to_entry()

to_entry(string $name, array<string|int, mixed> $data[, EntryFactory $entryFactory = new EntryFactory() ]) : Entry<mixed, mixed>
Parameters
$name : string
$data : array<string|int, mixed>
$entryFactory : EntryFactory = new EntryFactory()
Return values
Entry<mixed, mixed>

array_to_row()

array_to_row(array<string|int, array<string|int, mixed>>|array<string|int, mixed|string> $data[, EntryFactory $entryFactory = new EntryFactory() ][, array<string|int, Partition>|Partitions $partitions = [] ][, Schema|null $schema = null ]) : Row
Parameters
$data : array<string|int, array<string|int, mixed>>|array<string|int, mixed|string>
$entryFactory : EntryFactory = new EntryFactory()
$partitions : array<string|int, Partition>|Partitions = []
$schema : Schema|null = null
Return values
Row

array_to_rows()

array_to_rows(array<string|int, array<string|int, mixed>>|array<string|int, mixed|string> $data[, EntryFactory $entryFactory = new EntryFactory() ][, array<string|int, Partition>|Partitions $partitions = [] ][, Schema|null $schema = null ]) : Rows
Parameters
$data : array<string|int, array<string|int, mixed>>|array<string|int, mixed|string>
$entryFactory : EntryFactory = new EntryFactory()
$partitions : array<string|int, Partition>|Partitions = []
$schema : Schema|null = null
Return values
Rows

schema_to_json()

schema_to_json(Schema $schema[, bool $pretty = false ]) : string
Parameters
$schema : Schema
$pretty : bool = false
Return values
string

schema_from_json()

schema_from_json(string $schema) : Schema
Parameters
$schema : string
Return values
Schema

schema_metadata()

schema_metadata([array<string, array<string|int, bool|float|int|string>|bool|float|int|string> $metadata = [] ]) : Metadata
Parameters
$metadata : array<string, array<string|int, bool|float|int|string>|bool|float|int|string> = []
Return values
Metadata

int_schema()

Alias for `int_schema`.

int_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

integer_schema()

integer_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

str_schema()

Alias for `string_schema`.

str_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

string_schema()

string_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

bool_schema()

bool_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

float_schema()

float_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

map_schema()

map_schema(string $name, MapType<TKey, TValue$type[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$type : MapType<TKey, TValue>
$nullable : bool = false
$metadata : Metadata|null = null
Tags
template
template
Return values
Definition

list_schema()

list_schema(string $name, ListType<string|int, T$type[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$type : ListType<string|int, T>
$nullable : bool = false
$metadata : Metadata|null = null
Tags
template
Return values
Definition

enum_schema()

enum_schema(string $name, UnitEnum> $type[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$type : UnitEnum>
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

datetime_schema()

datetime_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

time_schema()

time_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

date_schema()

date_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

json_schema()

json_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

xml_schema()

xml_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

xml_element_schema()

xml_element_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

struct_schema()

struct_schema(string $name, StructureType<string|int, T$type[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$type : StructureType<string|int, T>
$nullable : bool = false
$metadata : Metadata|null = null
Tags
template
Return values
Definition

structure_schema()

structure_schema(string $name, StructureType<string|int, T$type[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$type : StructureType<string|int, T>
$nullable : bool = false
$metadata : Metadata|null = null
Tags
template
Return values
Definition

uuid_schema()

uuid_schema(string $name[, bool $nullable = false ][, Metadata|null $metadata = null ]) : Definition
Parameters
$name : string
$nullable : bool = false
$metadata : Metadata|null = null
Return values
Definition

get_type()

Please use \Flow\Types\DSL\get_type($value) instead

get_type(mixed $value) : Type<string|int, mixed>
Parameters
$value : mixed
Return values
Type<string|int, mixed>

print_rows()

print_rows(Rows $rows[, int|bool $truncate = false ][, Formatter|null $formatter = null ]) : string
Parameters
$rows : Rows
$truncate : int|bool = false
$formatter : Formatter|null = null
Return values
string

compare_entries_by_type()

compare_entries_by_type([array<string|int, mixed> $priorities = TypePriorities::PRIORITIES ][, Order $order = Order::ASC ]) : Comparator
Parameters
$priorities : array<string|int, mixed> = TypePriorities::PRIORITIES
$order : Order = Order::ASC
Return values
Comparator

compare_entries_by_type_desc()

compare_entries_by_type_desc([array<string|int, mixed> $priorities = TypePriorities::PRIORITIES ]) : Comparator
Parameters
$priorities : array<string|int, mixed> = TypePriorities::PRIORITIES
Return values
Comparator

compare_entries_by_type_and_name()

compare_entries_by_type_and_name([array<string|int, mixed> $priorities = TypePriorities::PRIORITIES ][, Order $order = Order::ASC ]) : Comparator
Parameters
$priorities : array<string|int, mixed> = TypePriorities::PRIORITIES
$order : Order = Order::ASC
Return values
Comparator

is_type()

is_type(array<string|int, string|Type<string|int, mixed>>|Type<string|int, mixed> $type, mixed $value) : bool
Parameters
$type : array<string|int, string|Type<string|int, mixed>>|Type<string|int, mixed>
$value : mixed
Return values
bool

type_is()

please use \Flow\Types\DSL\type_is($type, $typeClass): bool instead

type_is(Type<string|int, T$type, string $typeClass) : bool
Parameters
$type : Type<string|int, T>
$typeClass : string
Tags
template
Return values
bool

type_is_any()

please use \Flow\Types\DSL\type_is_any($type, $typeClass, ...$typeClasses): bool instead

type_is_any(Type<string|int, T$type, string $typeClass, string ...$typeClasses) : bool
Parameters
$type : Type<string|int, T>
$typeClass : string
$typeClasses : string
Tags
template
Return values
bool

generate_random_int()

generate_random_int([int $start = PHP_INT_MIN ][, int $end = PHP_INT_MAX ][, NativePHPRandomValueGenerator $generator = new NativePHPRandomValueGenerator() ]) : int
Parameters
$start : int = PHP_INT_MIN
$end : int = PHP_INT_MAX
$generator : NativePHPRandomValueGenerator = new NativePHPRandomValueGenerator()
Return values
int

dom_element_to_string()

Please use \Flow\Types\DSL\dom_element_to_string() instead

dom_element_to_string(DOMElement $element[, bool $format_output = false ][, bool $preserver_white_space = false ]) : string|false
Parameters
$element : DOMElement
$format_output : bool = false
$preserver_white_space : bool = false
Return values
string|false

date_interval_to_milliseconds()

date_interval_to_milliseconds(DateInterval $interval) : int
Parameters
$interval : DateInterval
Return values
int

date_interval_to_seconds()

date_interval_to_seconds(DateInterval $interval) : int
Parameters
$interval : DateInterval
Return values
int

date_interval_to_microseconds()

date_interval_to_microseconds(DateInterval $interval) : int
Parameters
$interval : DateInterval
Return values
int

        
On this page

Search results