Bitrix-D7  20.0.0
Класс ResultSerializable
Граф наследования:ResultSerializable:
Result CalculationResult

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

 serialize ()
 
 unserialize ($data)
 
- Открытые члены унаследованные от Result
 __construct ($result, Connection $dbConnection=null, \Bitrix\Main\Diag\SqlTrackerQuery $trackerQuery=null)
 
 getResource ()
 Returns database-specific resource of this result. Подробнее...
 
 setReplacedAliases (array $replacedAliases)
 Sets list of aliased columns. Подробнее...
 
 addReplacedAliases (array $replacedAliases)
 Extends list of aliased columns. Подробнее...
 
 setSerializedFields (array $serializedFields)
 Sets internal list of fields which will be unserialized on fetch. Подробнее...
 
 addFetchDataModifier ($fetchDataModifier)
 Modifier should accept once fetched array as an argument, then modify by link or return new array: Подробнее...
 
 fetchRaw ()
 Fetches one row of the query result and returns it in the associative array of raw DB data or false on empty data. Подробнее...
 
 fetch (\Bitrix\Main\Text\Converter $converter=null)
 Fetches one row of the query result and returns it in the associative array of converted data or false on empty data. Подробнее...
 
 fetchAll (\Bitrix\Main\Text\Converter $converter=null)
 Fetches all the rows of the query result and returns it in the array of associative arrays. Подробнее...
 
 getFields ()
 Returns an array of fields according to columns in the result. Подробнее...
 
 getSelectedRowsCount ()
 Returns the number of rows in the result. Подробнее...
 
 getTrackerQuery ()
 Returns current query tracker. Подробнее...
 
 getConverters ()
 
 setConverters ($converters)
 
 setCount ($n)
 Sets record count. Подробнее...
 
 getCount ()
 Returns record count. Подробнее...
 
 getIterator ()
 Retrieve an external iterator http://php.net/manual/en/iteratoraggregate.getiterator.php. Подробнее...
 

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

- Защищенные члены унаследованные от Result
 fetchRowInternal ()
 Returns next result row or false. Подробнее...
 
- Защищенные данные унаследованные от Result
 $connection
 
 $resource
 
 $trackerQuery = null
 
 $converters = array()
 
 $serializedFields = array()
 
 $replacedAliases = array()
 
 $fetchDataModifiers = array()
 
 $count
 

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

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

Методы

◆ serialize()

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

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

22  {
23  $result = get_object_vars($this);
24 
25  foreach($result as $name => $value)
26  if(empty($value))
27  unset($result[$name]);
28 
29  $result['errors'] = array();
30 
31  if($this->errors)
32  {
33  /** @var Error $error */
34  foreach($this->errors->toArray() as $error)
35  {
36  $result['errors'][] = array(
37  'code' => $error->getCode(),
38  'message' => $error->getMessage()
39  );
40  }
41  }
42 
43  $result['CHARSET'] = ToUpper(SITE_CHARSET);
44 
45  return serialize($result);
46  }

◆ unserialize()

unserialize (   $data)
Аргументы
string$data

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

52  {
53  $vars = unserialize($data);
54  $isNeedRecode = !empty($vars['CHARSET']) && $vars['CHARSET'] != ToUpper(SITE_CHARSET);
55  $this->errors = new ErrorCollection();
56 
57  foreach($vars as $name => $value)
58  {
59  if(!property_exists($this, $name))
60  continue;
61 
62  if($name == 'errors')
63  {
64  foreach($value as $error)
65  {
66  if($isNeedRecode)
67  $error['message'] = Encoding::convertEncoding($error['message'], $vars['CHARSET'], SITE_CHARSET);
68 
69  $this->addError(new Error($error['message'], $error['code']));
70  }
71  }
72  else
73  {
74  if($isNeedRecode)
75  $value = Encoding::convertEncoding($value, $vars['CHARSET'], SITE_CHARSET);
76 
77  $this->$name = $value;
78  }
79  }
80  }

Объявления и описания членов класса находятся в файле:
Bitrix\Sale\ResultSerializable\unserialize
unserialize($data)
Definition: resultserializable.php:51
Bitrix\Main\Text\Encoding\convertEncoding
static convertEncoding($data, $charsetFrom, $charsetTo, &$errorMessage="")
Converts data from a source encoding to a target encoding.
Definition: encoding.php:53
Bitrix\Sale\ResultSerializable\serialize
serialize()
Definition: resultserializable.php:21