Bitrix-D7  20.5.0
Класс ArrayField
Граф наследования:ArrayField:
ScalarField Field IStorable ITypeHintable IReadable

Открытые члены

 __construct ($name, $parameters=[])
 
 configureSerializationJson ()
 Sets json serialization format. Подробнее...
 
 configureSerializationPhp ()
 Sets php serialization format. Подробнее...
 
 configureSerializeCallback ($callback)
 Custom encode handler. Подробнее...
 
 configureUnserializeCallback ($callback)
 Custom decode handler. Подробнее...
 
 encode ($value)
 
 decode ($value)
 
 encodeJson ($value)
 
 decodeJson ($value)
 
 encodePhp ($value)
 
 decodePhp ($value)
 
 cast ($value)
 
 convertValueFromDb ($value)
 
 convertValueToDb ($value)
 
 getGetterTypeHint ()
 
 getSetterTypeHint ()
 
- Открытые члены унаследованные от ScalarField
 getTypeMask ()
 
 configurePrimary ($value=true)
 
 isPrimary ()
 
 configureRequired ($value=true)
 
 isRequired ()
 
 configureUnique ($value=true)
 
 isUnique ()
 
 configureAutocomplete ($value=true)
 
 isAutocomplete ()
 
 configurePrivate ($value=true)
 
 isPrivate ()
 
 configureColumnName ($value)
 
 getColumnName ()
 
 setColumnName ($column_name)
 
 configureDefaultValue ($value)
 
 getDefaultValue ($row=null)
 
 isValueEmpty ($value)
 
- Открытые члены унаследованные от Field
 setEntity (Entity $entity)
 
 resetEntity ()
 
 validateValue ($value, $primary, $row, Result $result)
 
 modifyValueBeforeSave ($value, $data)
 
 getValidators ()
 
 addValidator ($validator)
 
 getFetchDataModifiers ()
 
 addFetchDataModifier ($modifier)
 
 getSaveDataModifiers ()
 
 addSaveDataModifier ($modifier)
 
 isSerialized ()
 
 setSerialized ()
 
 configureSerialized ()
 
 getName ()
 
 setName ($name)
 
 configureTitle ($title)
 Lang phrase. Подробнее...
 
 getTitle ()
 
 setParameter ($name, $value)
 
 getParameter ($name)
 
 hasParameter ($name)
 
 setParentField (Field $parentField)
 
 getParentField ()
 
 getDataType ()
 
 getEntity ()
 
 getLangCode ()
 
 getConnection ()
 
 serialize ($value)
 
 unserialize ($value)
 
 postInitialize ()
 Called after being initialized by Entity. Подробнее...
 

Защищенные данные

 $serializationType
 
 $encodeFunction
 
 $decodeFunction
 
- Защищенные данные унаследованные от ScalarField
 $is_primary
 
 $is_unique
 
 $is_required
 
 $is_autocomplete
 
 $is_private
 
 $column_name = ''
 
 $default_value
 
- Защищенные данные унаследованные от Field
 $name
 
 $dataType
 
 $initialParameters
 
 $title
 
 $validation = null
 
 $validators = null
 
 $additionalValidators = array()
 
 $fetchDataModification = null
 
 $fetchDataModifiers
 
 $additionalFetchDataModifiers = array()
 
 $saveDataModification = null
 
 $saveDataModifiers
 
 $additionalSaveDataModifiers = array()
 
 $isSerialized = false
 
 $parentField
 
 $entity
 

Дополнительные унаследованные члены

- Открытые статические члены унаследованные от Field
static getOldDataTypeByClass ($class)
 
static getOldDataTypeByField (Field $field)
 
static getClassByOldDataType ($dateType)
 
- Защищенные члены унаследованные от Field
 appendValidator ($validator)
 
 appendFetchDataModifier ($modifier)
 
 appendSaveDataModifier ($modifier)
 
- Статические защищенные данные унаследованные от Field
static $oldDataTypes
 

Подробное описание

См. определение в файле arrayfield.php строка 17

Конструктор(ы)

◆ __construct()

__construct (   $name,
  $parameters = [] 
)

Переопределяет метод предка ScalarField.

См. определение в файле arrayfield.php строка 28

29  {
31 
32  $this->addSaveDataModifier([$this, 'encode']);
33  $this->addFetchDataModifier([$this, 'decode']);
34 
35  parent::__construct($name, $parameters);
36  }
configureSerializationJson()
Sets json serialization format.
Definition: arrayfield.php:43
__construct(Base $connector)
Constructor.
Definition: resultview.php:40

Методы

◆ cast()

cast (   $value)
Аргументы
mixed$value
Возвращает
array

Замещает IReadable.

См. определение в файле arrayfield.php строка 170

171  {
172  return (array) $value;
173  }

◆ configureSerializationJson()

configureSerializationJson ( )

Sets json serialization format.

Возвращает
$this

См. определение в файле arrayfield.php строка 43

44  {
45  $this->serializationType = 'json';
46  $this->encodeFunction = [$this, 'encodeJson'];
47  $this->decodeFunction = [$this, 'decodeJson'];
48 
49  return $this;
50  }

◆ configureSerializationPhp()

configureSerializationPhp ( )

Sets php serialization format.

Возвращает
$this

См. определение в файле arrayfield.php строка 57

58  {
59  $this->serializationType = 'php';
60  $this->encodeFunction = [$this, 'encodePhp'];
61  $this->decodeFunction = [$this, 'decodePhp'];
62 
63  return $this;
64  }

◆ configureSerializeCallback()

configureSerializeCallback (   $callback)

Custom encode handler.

Аргументы
callable$callback
Возвращает
$this

См. определение в файле arrayfield.php строка 73

74  {
75  $this->encodeFunction = $callback;
76  $this->serializationType = 'custom';
77 
78  return $this;
79  }

◆ configureUnserializeCallback()

configureUnserializeCallback (   $callback)

Custom decode handler.

Аргументы
$callback
Возвращает
$this

См. определение в файле arrayfield.php строка 88

89  {
90  $this->decodeFunction = $callback;
91  $this->serializationType = 'custom';
92 
93  return $this;
94  }

◆ convertValueFromDb()

convertValueFromDb (   $value)
Аргументы
mixed$value
Возвращает
mixed|string
Исключения

Замещает IReadable.

См. определение в файле arrayfield.php строка 181

182  {
183  return $this->getConnection()->getSqlHelper()->convertFromDbString($value);
184  }

◆ convertValueToDb()

convertValueToDb (   $value)
Аргументы
mixed$value
Возвращает
string
Исключения

Замещает IReadable.

См. определение в файле arrayfield.php строка 192

193  {
194  return $this->getConnection()->getSqlHelper()->convertToDbString($value);
195  }

◆ decode()

decode (   $value)
Аргументы
string$value
Возвращает
array

См. определение в файле arrayfield.php строка 112

113  {
114  if($value <> '')
115  {
116  $callback = $this->decodeFunction;
117  return $callback($value);
118  }
119 
120  return [];
121  }

◆ decodeJson()

decodeJson (   $value)
Аргументы
$value
Возвращает
mixed
Исключения

См. определение в файле arrayfield.php строка 140

141  {
142  return Json::decode($value);
143  }
static decode($data)
Takes a JSON encoded string and converts it into a PHP variable.
Definition: web/json.php:51

◆ decodePhp()

decodePhp (   $value)
Аргументы
$value
Возвращает
array

См. определение в файле arrayfield.php строка 160

161  {
162  return unserialize($value);
163  }

◆ encode()

encode (   $value)
Аргументы
array$value
Возвращает
string

См. определение в файле arrayfield.php строка 101

102  {
103  $callback = $this->encodeFunction;
104  return $callback($value);
105  }

◆ encodeJson()

encodeJson (   $value)
Аргументы
$value
Возвращает
mixed
Исключения

См. определение в файле arrayfield.php строка 129

130  {
131  return Json::encode($value);
132  }
static encode($data, $options=null)
Returns a string containing the JSON representation of $data.
Definition: web/json.php:22

◆ encodePhp()

encodePhp (   $value)
Аргументы
$value
Возвращает
string

См. определение в файле arrayfield.php строка 150

151  {
152  return serialize($value);
153  }

◆ getGetterTypeHint()

getGetterTypeHint ( )
Возвращает
string

Переопределяет метод предка ScalarField.

См. определение в файле arrayfield.php строка 200

201  {
202  return 'array';
203  }

◆ getSetterTypeHint()

getSetterTypeHint ( )
Возвращает
string

Переопределяет метод предка ScalarField.

См. определение в файле arrayfield.php строка 208

209  {
210  return 'array';
211  }

Поля

◆ $decodeFunction

$decodeFunction
protected

См. определение в файле arrayfield.php строка 26

◆ $encodeFunction

$encodeFunction
protected

См. определение в файле arrayfield.php строка 23

◆ $serializationType

$serializationType
protected

См. определение в файле arrayfield.php строка 20


Объявления и описания членов класса находятся в файле: