Google\Cloud\Datastore\DatastoreClient::updateBatch PHP Method

updateBatch() public method

Please note that updating a record in Cloud Datastore will replace the existing record. Adding, editing or removing a single property is only possible by first retrieving the entire entity in its existing state. Update by this method is non-transactional. If you need transaction support, use {@see \Google\Cloud\Datastore\Transaction::updateBatch()}. Example: $entities[0]['firstName'] = 'Bob'; $entities[1]['firstName'] = 'John'; $datastore->updateBatch($entities);
public updateBatch ( array $entities, array $options = [] ) : array
$entities array The entities to be updated.
$options array [optional] { Configuration Options @type bool $allowOverwrite Entities must be updated as an entire resource. Patch operations are not supported. Because entities can be created manually, or obtained by a lookup or query, it is possible to accidentally overwrite an existing record with a new one when manually creating an entity. To provide additional safety, this flag must be set to `true` in order to update a record when the entity provided was not obtained through a lookup or query. **Defaults to** `false`. }
return array [Response Body](https://cloud.google.com/datastore/reference/rest/v1/projects/commit#response-body)
    public function updateBatch(array $entities, array $options = [])
    {
        $options += ['allowOverwrite' => false];
        $this->operation->checkOverwrite($entities, $options['allowOverwrite']);
        $mutations = [];
        foreach ($entities as $entity) {
            $mutations[] = $this->operation->mutation('update', $entity, Entity::class);
        }
        return $this->operation->commit($mutations, $options);
    }