PHP 5 has reached end of support and will be deprecated on January 31, 2026. After deprecation, you won't be able to deploy PHP 5 applications, even if your organization previously used an organization policy to re-enable deployments of legacy runtimes. Your existing PHP 5 applications will continue to run and receive traffic after their deprecation date. We recommend that you migrate to the latest supported version of PHP.

User Objects

An instance of the User class represents a user. User instances are unique and comparable. If two instances are equal, then they represent the same user.

The application can access the User instance for the current user by calling the UserService::getCurrentUser() function.

use google\appengine\api\users\UserService;
$user = UserService::getCurrentUser();
if (isset($user)) {
 return sprintf('Welcome, %s! (<a href="%s">sign out</a>)',
 $user->getNickname(),
 UserService::createLogoutUrl('/'));
} else {
 return sprintf('<a href="%s">Sign in or register</a>',
 UserService::createLoginUrl('/'));
}

You can use the UserService::getCurrentUser() function no matter which authentication option your app uses.

A User instance can be also constructed from an email address:

$user = new User('Albert.Johnson@example.com');

If the User::__construct() is called with an email address that does not correspond with a valid Google account, the object will be created but it will not correspond with a real Google account. This will be the case even if someone creates a Google account with the given email address after the object is stored. A User value with an email address that does not represent a Google account at the time it is created will never match a User value that represents a real user.

The User object for a valid user can provide a unique ID value for the user that stays the same even if the user changes her email address. The getUserId() method returns this ID, a string value.

The User object has the same form no matter which method of authentication your app uses.

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025年12月17日 UTC.