function DatabaseStorageExpirable::setWithExpireIfNotExists in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/KeyValueStore/DatabaseStorageExpirable.php \Drupal\Core\KeyValueStore\DatabaseStorageExpirable::setWithExpireIfNotExists()
Sets a value for a given key with a time to live if it does not yet exist.
Parameters
string $key: The key of the data to store.
mixed $value: The data to store.
int $expire: The time to live for items, in seconds.
Return value
bool TRUE if the data was set, or FALSE if it already existed.
Overrides KeyValueStoreExpirableInterface::setWithExpireIfNotExists
File
- core/
lib/ Drupal/ Core/ KeyValueStore/ DatabaseStorageExpirable.php, line 95 - Contains \Drupal\Core\KeyValueStore\DatabaseStorageExpirable.
Class
- DatabaseStorageExpirable
- Defines a default key/value store implementation for expiring items.
Namespace
Drupal\Core\KeyValueStoreCode
function setWithExpireIfNotExists($key, $value, $expire) {
$result = $this->connection
->merge($this->table)
->insertFields(array(
'collection' => $this->collection,
'name' => $key,
'value' => $this->serializer
->encode($value),
'expire' => REQUEST_TIME + $expire,
))
->condition('collection', $this->collection)
->condition('name', $key)
->execute();
return $result == Merge::STATUS_INSERT;
}