public function createAccount($email)
    {
        $captchaUrl = 'https://store.steampowered.com/join/';
        if (is_null($this->captchaGID)) {
            $captchaUrlResponse = $this->cURL($captchaUrl);
            $pattern = '/<input(?:.*?)id=\"captchagid\"(?:.*)value=\"([^"]+).*>/i';
            preg_match($pattern, $captchaUrlResponse, $matches);
            if (isset($matches[1])) {
                $this->requiresCaptcha = true;
                $this->captchaGID = $matches[1];
                return CreateAccountResult::NeedCaptcha;
            } else {
                throw new SteamException('Unexpected response from Steam.');
            }
        } else {
            $this->_createCookieFile();

            $createAccountUrl = 'https://store.steampowered.com/join/createaccount/';
            $params = [
                'accountname' => $this->username,
                'password' => $this->password,
                'email' => $email,
                'captchagid' => $this->captchaGID,
                'captcha_text' => $this->captchaText,
                'i_agree' => 1,
                'ticket' => '',
                'count' => 14
            ];
            $createAccountResponse = $this->cURL($createAccountUrl, $captchaUrl, $params);
            $createAccountJson = json_decode($createAccountResponse, true);

            if ($createAccountJson == null) {
                return CreateAccountResult::GeneralFailure;
            } else if (isset($createAccountJson['bSuccess']) && $createAccountJson['bSuccess']) {
                $this->_setSession();
                $this->loggedIn = true;
                return CreateAccountResult::CreatedOkay;
            }
        }

        return CreateAccountResult::GeneralFailure;
    }
public function createAccount($email)
    {
        $captchaUrl = 'https://store.steampowered.com/join/';
        if (is_null($this->captchaGID)) {
            $captchaUrlResponse = $this->cURL($captchaUrl);
            $pattern = '/<input(?:.*?)id=\"captchagid\"(?:.*)value=\"([^"]+).*>/i';
            preg_match($pattern, $captchaUrlResponse, $matches);
            if (isset($matches[1])) {
                $this->requiresCaptcha = true;
                $this->captchaGID = $matches[1];
                return CreateAccountResult::NeedCaptcha;
            } else {
                throw new SteamException('Unexpected response from Steam.');
            }
        } else {
            $this->_createCookieFile();

            $createAccountUrl = 'https://store.steampowered.com/join/createaccount/';
            $params = [
                'accountname' => $this->username,
                'password' => $this->password,
                'email' => $email,
                'captchagid' => $this->captchaGID,
                'captcha_text' => $this->captchaText,
                'i_agree' => 1,
                'ticket' => '',
                'count' => 14
            ];
            $createAccountResponse = $this->cURL($createAccountUrl, $captchaUrl, $params);
            $createAccountJson = json_decode($createAccountResponse, true);

            if ($createAccountJson == null) {
                return CreateAccountResult::GeneralFailure;
            } else if (isset($createAccountJson['bSuccess']) && $createAccountJson['bSuccess']) {
                $this->_setSession();
                $this->loggedIn = true;
                return CreateAccountResult::CreatedOkay;
            }
        }

        return CreateAccountResult::GeneralFailure;
    }
public function createAccount ( $ email ) { $ captchaUrl = 'https://store.steampowered.com/join/' ; if ( is_null ( $ this -> captchaGID ) ) { $ captchaUrlResponse = $ this -> cURL ( $ captchaUrl ) ; $ pattern = '/<input(?:.*?)id=\"captchagid\"(?:.*)value=\"([^"]+).*>/i' ; preg_match ( $ pattern , $ captchaUrlResponse , $ matches ) ; if ( isset ( $ matches [ 1 ] ) ) { $ this -> requiresCaptcha = true ; $ this -> captchaGID = $ matches [ 1 ] ; return CreateAccountResult :: NeedCaptcha ; } else { throw new SteamException ( 'Unexpected response from Steam.' ) ; } } else { $ this -> _createCookieFile ( ) ; $ createAccountUrl = 'https://store.steampowered.com/join/createaccount/' ; $ params = [ 'accountname' => $ this -> username , 'password' => $ this -> password , 'email' => $ email , 'captchagid' => $ this -> captchaGID , 'captcha_text' => $ this -> captchaText , 'i_agree' => 1 , 'ticket' => '' , 'count' => 14 ] ; $ createAccountResponse = $ this -> cURL ( $ createAccountUrl , $ captchaUrl , $ params ) ; $ createAccountJson = json_decode ( $ createAccountResponse , true ) ; if ( $ createAccountJson == null ) { return CreateAccountResult :: GeneralFailure ; } else if ( isset ( $ createAccountJson [ 'bSuccess' ] ) && $ createAccountJson [ 'bSuccess' ] ) { $ this -> _setSession ( ) ; $ this -> loggedIn = true ; return CreateAccountResult :: CreatedOkay ; } } return CreateAccountResult :: GeneralFailure ; }
Create a new Steam account.
@param $email
@return CreateAccountResult
@throws SteamException Thrown when Steam gives an unexpected response (e.g. Steam is down/having issues)
@throws \Exception Thrown when cookiefile is unable to be created.
Create a new Steam account .