Objek Pengguna

Instance class Pengguna mewakili pengguna. Instance pengguna bersifat unik dan sebanding. Jika dua instance sama, berarti keduanya mewakili pengguna yang sama.

Aplikasi dapat mengakses instance Pengguna untuk pengguna saat ini dengan memanggil fungsi UserService::getCurrentUser().

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('/'));
}

Anda dapat menggunakan fungsi UserService::getCurrentUser(), tidak peduli apa pun opsi autentikasi yang digunakan aplikasi Anda.

Instance Pengguna juga dapat dibuat dari alamat email:

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

Jika User::__construct() dipanggil dengan alamat email yang tidak sesuai dengan akun Google yang valid, objek akan dibuat tetapi tidak sesuai dengan akun Google sebenarnya. Hal ini akan berlaku meskipun seseorang membuat akun Google dengan alamat email yang diberikan setelah objek disimpan. Nilai Pengguna dengan alamat email yang tidak mewakili akun Google pada saat dibuat tidak akan pernah cocok dengan nilai Pengguna yang mewakili pengguna sebenarnya.

Objek Pengguna untuk pengguna yang valid dapat memberikan nilai ID unik bagi pengguna yang tetap sama meskipun pengguna mengubah alamat emailnya. Metode getUserId() menampilkan ID ini, yang berupa nilai string.

Objek User memiliki bentuk yang sama, tidak peduli apa pun metode autentikasi yang digunakan aplikasi Anda.