protected function doProtectFields(array $data): array
	{
		if ($this->protectFields === false)
		{
			return $data;
		}

		if (empty($this->allowedFields))
		{
			throw DataException::forInvalidAllowedFields(get_class($this));
		}

		if (is_array($data) && count($data))
		{
			foreach ($data as $key => $val)
			{
				if (! in_array($key, $this->allowedFields))
				{
					unset($data[$key]);
				}
			}
		}

		return $data;
	}
protected function doProtectFields(array $data): array
	{
		if ($this->protectFields === false)
		{
			return $data;
		}

		if (empty($this->allowedFields))
		{
			throw DataException::forInvalidAllowedFields(get_class($this));
		}

		if (is_array($data) && count($data))
		{
			foreach ($data as $key => $val)
			{
				if (! in_array($key, $this->allowedFields))
				{
					unset($data[$key]);
				}
			}
		}

		return $data;
	}
protected function doProtectFields ( array $ data ) : array { if ( $ this -> protectFields === false ) { return $ data ; } if ( empty ( $ this -> allowedFields ) ) { throw DataException :: forInvalidAllowedFields ( get_class ( $ this ) ) ; } if ( is_array ( $ data ) && count ( $ data ) ) { foreach ( $ data as $ key => $ val ) { if ( ! in_array ( $ key , $ this -> allowedFields ) ) { unset ( $ data [ $ key ] ) ; } } } return $ data ; }
Ensures that only the fields that are allowed to be updated
are in the data array.

Used by insert() and update() to protect against mass assignment
vulnerabilities.

@param array $data

@return array
@throws \CodeIgniter\Database\Exceptions\DataException
Ensures that only the fields that are allowed to be updated are in the data array .