**
Устанавливает элемент с заданным смещением.

@param null $key
@param null $value
@return void
349079
public function offsetSet($key = null, $value = null)
    {
        if(is_null($key))
            $this->attributes[] =   $value;
        else
            $this->attributes[$key] =   $value;
    }
608710
public function set(string $key, $value)
    {
        $value = static::format($value);
        parent::set($key, $value);
    }
1141490
public function push($key, $value = null)
    {
        $pushItem = new DataLayer();
        $pushItem->set($key, $value);
        $this->pushDataLayer->push($pushItem);
    }
720883
public function iteration($value, $key = null)
    {
        if (is_null($key)) {
            $this->_iterations[] = $value;
        } else {
            $this->_iterations[$key] = $value;
        }
    }
1047655
public function setChild($value, $key = null)
    {
        if (empty($key)) {
            $this->children[] = $value;
        } else {
            $this->children[$key] = $value;
        }
    }
375823
function setData($key, $value = null)
    {
        if (is_null($value)) {
            unset($this->data[$key]);
        } else {
            $this->data[$key] = $value;
        }
        $this->touched = true;
    }
222113
public function set($key, $value, $subKey = null)
    {
        if (!is_null($subKey) && (is_array($this->data[$key]))) {
            $this->data[$key][$subKey] = $value;
        } else {
            $this->data[$key] = $value;
        }
    }
357609
public function set( $key, $value ) {

		if ( isset( $this->redactedFields[$key] ) ) {
			return null;
		}

		$this->recordFields[$key] = $value;
	}
990396
public function remove($key = null, $value = array())
	{
		$users = $this->_userids($value);

		$this->__set($key, array_diff($this->__get($key), $users));
	}
1204130
protected function addParam($key, $value = null)
	{
		if (is_null($value))
		{
			$this->params[] = $key;
		}
		else
		{
			$this->params[$key] = $value;
		}

	}
1132563
public function addParam($value, $key = null)
    {
        if ($key !== null && ! is_numeric($key)) {
            $this->params[$key] = $value;
        } else {
            $this->params[] = $value;
        }
    }
940295
public function put( $key, $value = null ) {
		if ( ! is_array( $key ) ) {
			$key = [ $key => $value ];
		}

		foreach ( $key as $array_key => $array_value ) {
			Arr::set( $this->attributes, $array_key, $array_value );
		}
	}
444083
public function set(string $key, $value = null)
    {
        return Arr::set($this->items, $key, \value($value));
    }
606953
public function set($key, $value=null)
    {
        // Set the time that this token was saved for the first time
        $this->setAcquisitionTime();

        if (is_null($value) && is_array($key)) {
            // An array of attributes was passed in so save each one
            foreach($key as $attribute => $value){
                $this->setValue($attribute, $value);
            }
        } else {
            // Not an array so just set the attribute
            $this->setValue($key, $value);
        }
    }
248152
public function add($key = null, $value = array())
	{
		$users = $this->_userids($value);

		$this->__set($key, array_merge($this->__get($key), $users));
	}
436428
public function addParam($value, $key = null)
    {
        if ($key === null || is_int($key)) {
            $this->params[] = $value;
        } else {
            $this->params[$key] = $value;
        }
    }
27560
public static function set($keys, $value = null)
    {
        if (is_array($keys)) {
            self::$variables = array_merge(self::$variables, $keys);
        } else {
            self::$variables[$keys] = $value;
        }
    }