public function BaseFieldDefinition::getDefaultValue in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/Field/BaseFieldDefinition.php \Drupal\Core\Field\BaseFieldDefinition::getDefaultValue()
Returns the default value for the field in a newly created entity.
This method computes the runtime default value for a field in a given entity. To access the raw properties assigned to the field definition, ::getDefaultValueLiteral() or ::getDefaultValueCallback() should be used instead.
Parameters
\Drupal\Core\Entity\FieldableEntityInterface $entity: The entity for which the default value is generated.
Return value
array The default value for the field, as a numerically indexed array of items, each item being a property/value array (array() for no default value).
Overrides FieldDefinitionInterface::getDefaultValue
See also
FieldDefinitionInterface::getDefaultValueLiteral()
FieldDefinitionInterface::getDefaultValueCallback()
File
- core/
lib/ Drupal/ Core/ Field/ BaseFieldDefinition.php, line 459 - Contains \Drupal\Core\Field\BaseFieldDefinition.
Class
- BaseFieldDefinition
- A class for defining entity fields.
Namespace
Drupal\Core\FieldCode
public function getDefaultValue(FieldableEntityInterface $entity) {
// Allow custom default values function.
if ($callback = $this
->getDefaultValueCallback()) {
$value = call_user_func($callback, $entity, $this);
}
else {
$value = $this
->getDefaultValueLiteral();
}
// Normalize into the "array keyed by delta" format.
if (isset($value) && !is_array($value)) {
$properties = $this
->getPropertyNames();
$property = reset($properties);
$value = array(
array(
$property => $value,
),
);
}
// Allow the field type to process default values.
$field_item_list_class = $this
->getClass();
return $field_item_list_class::processDefaultValue($value, $entity, $this);
}