src/Biz/User/AuthProvider/DiscuzAuthProvider.php

(开头部分) 1KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

namespace Biz\User\AuthProvider;

use Biz\BaseService;
use Biz\System\Service\SettingService;

class DiscuzAuthProvider extends BaseService implements AuthProvider
{
    private $mockedDiscusClientPath = null;

    public function register($registration)
    {
        $this->initDiscuzApi();

        if (UC_CHARSET == 'gbk') {
            $registration['nickname'] = iconv('UTF-8', 'gb2312', $registration['nickname']);
        }

        $result = uc_user_register($registration['nickname'], $registration['password'], $registration['email']);
        if ($result < 0) {
            $result = $this->convertApiResult($result);
            throw new \RuntimeException("{$result[0]}:{$result[1]}");
        }

        $registration['id'] = $result;

        return $registration;
    }

    public function syncLogin($userId)
    {
        $this->initDiscuzApi();

        return uc_user_synlogin($userId);
    }

    public function syncLogout($userId)
    {
        $this->initDiscuzApi();

        return uc_user_synlogout();
    }

    public function changeNickname($userId, $newName)
    {
        $this->initDiscuzApi();

        return uc_user_renameuser($userId, $newName);
    }

    public function changeEmail($userId, $password, $newEmail)
    {
        $this->initDiscuzApi();
        $user = uc_get_user($userId, 1);
        $result = uc_user_edit($user[1], null, null, $newEmail, 1);

        return 1 == $result;
    }

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。