Google\Cloud\Iam\PolicyBuilder::addBinding PHP Method

addBinding() public method

Example: $builder->addBinding('roles/admin', [ 'user:[email protected]' ]);
public addBinding ( string $role, array $members ) : PolicyBuilder
$role string A valid role for the service
$members array An array of members to assign to the binding
return PolicyBuilder
    public function addBinding($role, array $members)
    {
        foreach ($members as $member) {
            $this->validateMember($member);
        }
        $this->bindings[] = ['role' => $role, 'members' => $members];
        return $this;
    }

Usage Example

 public function testSetBindings()
 {
     $role = 'test';
     $members = ['user:[email protected]'];
     $builder = new PolicyBuilder();
     $builder->addBinding($role, $members);
     $result = $builder->result();
     $policy = ['bindings' => [['role' => $role, 'members' => $members]]];
     $this->assertEquals($policy, $result);
     $newMembers = ['group:[email protected]'];
     $builder->setBindings([['role' => $role, 'members' => $newMembers]]);
     $newResult = $builder->result();
     $newPolicy = ['bindings' => [['role' => $role, 'members' => $newMembers]]];
     $this->assertEquals($newPolicy, $newResult);
 }