Bitrix-D7 22.2
Загрузка...
Поиск...
Не найдено
Класс AddResult
+ Граф наследования:AddResult:

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

 __construct ()
 
 setId ($id)
 
 getId ()
 
 setPrimary ($primary)
 
 getPrimary ()
 
 getResource ()
 
 setReplacedAliases (array $replacedAliases)
 
 addReplacedAliases (array $replacedAliases)
 
 setSerializedFields (array $serializedFields)
 
 addFetchDataModifier ($fetchDataModifier)
 
 fetchRaw ()
 
 fetch (\Bitrix\Main\Text\Converter $converter=null)
 
 fetchAll (\Bitrix\Main\Text\Converter $converter=null)
 
 getFields ()
 
 getSelectedRowsCount ()
 
 getTrackerQuery ()
 
 getConverters ()
 
 setConverters ($converters)
 
 setCount ($n)
 
 getCount ()
 
 getIterator ()
 

Защищенные члены

 fetchRowInternal ()
 

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

 $primary
 
 $connection
 
 $resource
 
 $trackerQuery = null
 
 $converters = array()
 
 $serializedFields = array()
 
 $replacedAliases = array()
 
 $fetchDataModifiers = array()
 
 $count
 

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

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

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

◆ __construct()

__construct ( )

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

17 {
18 parent::__construct();
19 }

Методы

◆ addFetchDataModifier()

addFetchDataModifier (   $fetchDataModifier)
inherited

Modifier should accept once fetched array as an argument, then modify by link or return new array:

  • function (&$data) { $data['AGE'] -= 7; }
  • function ($data) { $data['AGE'] -= 7; return $data; }
Аргументы
callable$fetchDataModifierValid callback.
Возвращает
void
Исключения

Bitrix\Main\ArgumentException

Переопределяется в Result.

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

124 {
125 if (!is_callable($fetchDataModifier))
126 {
127 throw new \Bitrix\Main\ArgumentException('Data Modifier should be a callback');
128 }
129
130 $this->fetchDataModifiers[] = $fetchDataModifier;
131 }

◆ addReplacedAliases()

addReplacedAliases ( array  $replacedAliases)
inherited

Extends list of aliased columns.

Аргументы
array[string]string$replacedAliases Aliases map from tech to human.
Возвращает
void
См. также
\Bitrix\Main\Db\ResultsetReplacedAliases

Переопределяется в Result.

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

97 {
98 $this->replacedAliases = array_merge($this->replacedAliases, $replacedAliases);
99 }

◆ fetch()

fetch ( \Bitrix\Main\Text\Converter  $converter = null)
inherited

Fetches one row of the query result and returns it in the associative array of converted data or false on empty data.

Аргументы
\Bitrix\Main\Text\Converter$converterOptional converter to encode data on fetching.
Возвращает
array|false

Переопределяется в Result.

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

168 {
169 $data = $this->fetchRaw();
170
171 if (!$data)
172 {
173 return false;
174 }
175
176 if ($this->converters)
177 {
178 foreach ($this->converters as $field => $convertDataModifier)
179 {
180 $data[$field] = call_user_func_array($convertDataModifier, array($data[$field]));
181 }
182 }
183
184 if ($this->serializedFields)
185 {
186 foreach ($this->serializedFields as $field)
187 {
188 if (isset($data[$field]))
189 $data[$field] = unserialize($data[$field]);
190 }
191 }
192
193 if ($this->replacedAliases)
194 {
195 foreach ($this->replacedAliases as $tech => $human)
196 {
197 $data[$human] = $data[$tech];
198 unset($data[$tech]);
199 }
200 }
201
202 if ($this->fetchDataModifiers)
203 {
204 foreach ($this->fetchDataModifiers as $fetchDataModifier)
205 {
206 $result = call_user_func_array($fetchDataModifier, array(&$data));
207
208 if (is_array($result))
209 {
210 $data = $result;
211 }
212 }
213 }
214
215 if ($converter != null)
216 {
217 foreach ($data as $key => $val)
218 {
219 $data[$key] = $converter->encode(
220 $val,
221 (isset($data[$key."_TYPE"])? $data[$key."_TYPE"] : \Bitrix\Main\Text\Converter::TEXT)
222 );
223 }
224 }
225
226 return $data;
227 }

◆ fetchAll()

fetchAll ( \Bitrix\Main\Text\Converter  $converter = null)
inherited

Fetches all the rows of the query result and returns it in the array of associative arrays. Returns an empty array if query has no data.

Аргументы
\Bitrix\Main\Text\Converter$converterOptional converter to encode data on fetching.
Возвращает
array

Переопределяется в Result.

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

238 {
239 $res = array();
240 while ($ar = $this->fetch($converter))
241 {
242 $res[] = $ar;
243 }
244 return $res;
245 }
fetch(\Bitrix\Main\Text\Converter $converter=null)
Definition: result.php:167

◆ fetchRaw()

fetchRaw ( )
inherited

Fetches one row of the query result and returns it in the associative array of raw DB data or false on empty data.

Возвращает
array|false

Переопределяется в Result.

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

139 {
140 if ($this->trackerQuery != null)
141 {
142 $this->trackerQuery->restartQuery();
143 }
144
145 $data = $this->fetchRowInternal();
146
147 if ($this->trackerQuery != null)
148 {
149 $this->trackerQuery->refinishQuery();
150 }
151
152 if (!$data)
153 {
154 return false;
155 }
156
157 return $data;
158 }

◆ fetchRowInternal()

fetchRowInternal ( )
abstractprotectedinherited

Returns next result row or false.

Возвращает
array|false

Переопределяется в ArrayResult, MssqlResult, MysqliResult, MysqlResult, OracleResult и Result.

◆ getConverters()

getConverters ( )
inherited
Возвращает
callable[]

Переопределяется в Result.

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

282 {
283 return $this->converters;
284 }

◆ getCount()

getCount ( )
inherited

Returns record count. It's required to set record count explicitly before.

Возвращает
int
Исключения

Bitrix\Main\ObjectPropertyException

Переопределяется в Result.

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

309 {
310 if($this->count !== null)
311 {
312 return $this->count;
313 }
314 throw new \Bitrix\Main\ObjectPropertyException("count");
315 }

◆ getFields()

getFields ( )
abstractinherited

Returns an array of fields according to columns in the result.

Возвращает
\Bitrix\Main\ORM\Fields\ScalarField[]

Переопределяется в ArrayResult, MssqlResult, MysqliResult, MysqlResult, OracleResult и Result.

◆ getId()

getId ( )

Returns id of added record

Возвращает
int|array

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

31 {
32 if (is_array($this->primary) && count($this->primary) == 1)
33 {
34 return end($this->primary);
35 }
36
37 return $this->primary;
38 }

◆ getIterator()

getIterator ( )
inherited

Retrieve an external iterator An instance of an object implementing Iterator or Traversable 5.0.0

Переопределяется в Result.

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

324 : \Traversable
325 {
326 return new ResultIterator($this);
327 }

◆ getPrimary()

getPrimary ( )
Возвращает
array

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

52 {
53 return $this->primary;
54 }

◆ getResource()

getResource ( )
inherited

Returns database-specific resource of this result.

Возвращает
null|resource

Переопределяется в Result.

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

70 {
71 return $this->resource;
72 }

◆ getSelectedRowsCount()

getSelectedRowsCount ( )
abstractinherited

Returns the number of rows in the result.

Возвращает
int

Переопределяется в ArrayResult, MssqlResult, MysqliResult, MysqlResult, OracleResult и Result.

◆ getTrackerQuery()

getTrackerQuery ( )
inherited

Returns current query tracker.

Возвращает
\Bitrix\Main\Diag\SqlTrackerQuery|null

Переопределяется в Result.

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

274 {
275 return $this->trackerQuery;
276 }

◆ setConverters()

setConverters (   $converters)
inherited
Аргументы
callable[]$converters

Переопределяется в Result.

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

290 {
291 $this->converters = $converters;
292 }

◆ setCount()

setCount (   $n)
inherited

Sets record count.

Аргументы
int$n

Переопределяется в Result.

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

299 {
300 $this->count = (int)$n;
301 }

◆ setId()

setId (   $id)

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

22 {
23 $this->primary = array('ID' => $id);
24 }

◆ setPrimary()

setPrimary (   $primary)
Аргументы
array$primary

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

44 {
45 $this->primary = $primary;
46 }

◆ setReplacedAliases()

setReplacedAliases ( array  $replacedAliases)
inherited

Sets list of aliased columns. This allows to overcome database limits on length of the column names.

Аргументы
array[string]string$replacedAliases Aliases map from tech to human.
Возвращает
void
См. также
\Bitrix\Main\Db\ResultaddReplacedAliases

Переопределяется в Result.

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

84 {
85 $this->replacedAliases = $replacedAliases;
86 }

◆ setSerializedFields()

setSerializedFields ( array  $serializedFields)
inherited

Sets internal list of fields which will be unserialized on fetch.

Аргументы
array$serializedFieldsList of fields.
Возвращает
void

Переопределяется в Result.

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

109 {
110 $this->serializedFields = $serializedFields;
111 }

Поля

◆ $connection

$connection
protectedinherited

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

◆ $converters

$converters = array()
protectedinherited

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

◆ $count

$count
protectedinherited

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

◆ $fetchDataModifiers

$fetchDataModifiers = array()
protectedinherited

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

◆ $primary

$primary
protected

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

◆ $replacedAliases

$replacedAliases = array()
protectedinherited

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

◆ $resource

Bitrix Main DB Result $resource
protectedinherited

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

◆ $serializedFields

$serializedFields = array()
protectedinherited

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

◆ $trackerQuery

$trackerQuery = null
protectedinherited

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


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