Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/main/lib/orm/fields/ |
Upload File : |
<?php /** * Bitrix Framework * @package bitrix * @subpackage main * @copyright 2001-2012 Bitrix */ namespace Bitrix\Main\ORM\Fields; use Bitrix\Main\DB\SqlExpression; /** * Entity field class for integer data type * * @package bitrix * @subpackage main */ class IntegerField extends ScalarField { /** @var int */ protected $size = 4; /** * IntegerField constructor. * * @param $name * @param array $parameters deprecated, use configure* and add* methods instead * * @throws \Bitrix\Main\SystemException */ function __construct($name, $parameters = array()) { parent::__construct($name, $parameters); if(isset($parameters['size']) && intval($parameters['size']) > 0) { $this->size = intval($parameters['size']); } } /** * @param $size * * @return $this */ public function configureSize($size) { $this->size = (int)$size; return $this; } /** * Returns the size of the field in a database (in bits). * @return int */ public function getSize() { return $this->size; } /** * @param mixed $value * * @return SqlExpression|int */ public function cast($value) { if ($this->is_nullable && $value === null) { return $value; } if ($value instanceof SqlExpression) { return $value; } return (int) $value; } /** * @param mixed $value * * @return int * @throws \Bitrix\Main\SystemException */ public function convertValueFromDb($value) { return $this->getConnection()->getSqlHelper()->convertFromDbInteger($value); } /** * @param int $value * * @return string * @throws \Bitrix\Main\SystemException */ public function convertValueToDb($value) { if ($value instanceof SqlExpression) { return $value; } return $value === null && $this->is_nullable ? $value : $this->getConnection()->getSqlHelper()->convertToDbInteger($value, $this->size); } /** * @return string */ public function getGetterTypeHint() { return $this->getNullableTypeHint('\\int'); } /** * @return string */ public function getSetterTypeHint() { return $this->getNullableTypeHint('\\int'); } }