function AccountSwitcher::switchTo
Safely switches to another account.
Each invocation of AccountSwitcherInterface::switchTo() must be matched by a corresponding invocation of AccountSwitcherInterface::switchBack() in the same function.
Parameters
\Drupal\Core\Session\AccountInterface $account: The account to switch to.
Return value
$this $this.
Overrides AccountSwitcherInterface::switchTo
File
- 
              core/lib/ Drupal/ Core/ Session/ AccountSwitcher.php, line 58 
Class
- AccountSwitcher
- An implementation of AccountSwitcherInterface.
Namespace
Drupal\Core\SessionCode
public function switchTo(AccountInterface $account) {
  // Prevent session information from being saved and push previous account.
  if (!isset($this->originalSessionSaving)) {
    // Ensure that only the first session saving status is saved.
    $this->originalSessionSaving = $this->writeSafeHandler
      ->isSessionWritable();
  }
  $this->writeSafeHandler
    ->setSessionWritable(FALSE);
  array_push($this->accountStack, $this->currentUser
    ->getAccount());
  $this->currentUser
    ->setAccount($account);
  return $this;
}Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.
