Same name and namespace in other branches
  1. 8.9.x core/lib/Drupal/Core/Field/FieldConfigInterface.php \Drupal\Core\Field\FieldConfigInterface::setSettings()
  2. 9 core/lib/Drupal/Core/Field/FieldConfigInterface.php \Drupal\Core\Field\FieldConfigInterface::setSettings()

Sets field settings.

Note that the method does not unset existing settings not specified in the incoming $settings array.

For example:

// Given these are the default settings.
$field_definition
  ->getSettings() === [
  'fruit' => 'apple',
  'season' => 'summer',
];

// Change only the 'fruit' setting.
$field_definition
  ->setSettings([
  'fruit' => 'banana',
]);

// The 'season' setting persists unchanged.
$field_definition
  ->getSettings() === [
  'fruit' => 'banana',
  'season' => 'summer',
];

For clarity, it is preferred to use setSetting() if not all available settings are supplied.

Parameters

array $settings: The array of field settings.

Return value

$this

1 method overrides FieldConfigInterface::setSettings()
FieldConfigBase::setSettings in core/lib/Drupal/Core/Field/FieldConfigBase.php
Sets field settings.

File

core/lib/Drupal/Core/Field/FieldConfigInterface.php, line 82

Class

FieldConfigInterface
Defines an interface for configurable field definitions.

Namespace

Drupal\Core\Field

Code

public function setSettings(array $settings);