gpt4 book ai didi

php - Laravel 弃用错误 : idn_to_ascii(): INTL_IDNA_VARIANT_2003 is deprecated

转载 作者:行者123 更新时间:2023-12-04 04:12:59 25 4
gpt4 key购买 nike

我的 Laravel 版本是 6.

我的注册表单在实时服务器上不起作用,但它在本地主机上运行良好。

当我点击注册按钮时,它会抛出这个异常。

idn_to_ascii(): INTL_IDNA_VARIANT_2003 is deprecated

它指向我的 RegisterController.php 第 114 行。

$this->validator($request->all())->validate();

这行 vendor/guzzlehttp/guzzle/src/Utils.php:35

? idn_to_ascii($uri->getHost(), $options)

注册 Controller .php

class RegisterController extends Controller
{
use RegistersUsers;

protected $redirectTo = RouteServiceProvider::HOME;

public function __construct()
{
$this->middleware('guest');
}

protected function validator(array $data)
{
$validator = Validator::make($data, [
'register_name' => ['required', 'string', 'max:8'],
'register_email' => ['required', 'string', 'email', 'max:255', 'unique:users,email'],
'register_password' => ['required', 'string', 'min:8', 'confirmed'],
'user_type'=> ['required','in:user,company'],
'g-recaptcha-response' => ['required','captcha'],

]);
$validator->setAttributeNames([
'register_email' => 'email',
'register_password' => 'password',
]);

return $validator;
}
protected function create(array $data)
{
$user = User::create([
'name' => $data['register_name'],
'email' => $data['register_email'],
'password' => Hash::make($data['register_password']),
'user_type' =>$data['user_type'],

]);

$user->sendEmailVerificationNotification();

return $user;
}

public function register(Request $request)
{
$this->validator($request->all())->validate();

event(new Registered($user = $this->create($request->all())));

$this->guard()->login($user);

return $this->registered($request, $user)
?: redirect()->intended($this->redirectPath());
}

}

最佳答案

我的服务器上有 php7.3。我遇到了同样的错误。但是快点,我解决了我的问题。

当我们使用这个命令在我们的 Laravel 应用程序中安装 guzzle 时

composer require guzzlehttp/guzzle

它安装的 guzzle 版本低于 ^7。要解决此问题,我们需要最新的 guzzle 版本,在撰写本文时为 ^7.0。

所以,有解决方案。

在服务器上编辑您的 composer.json 文件。并像这样更新你的 guzzle 版本。

"guzzlehttp/guzzle": "^7.0",

然后在您的服务器终端上运行命令。

composer update

就是这样。

如果您没有将服务器 ssh 连接到您的电脑,您可以更新您的本地项目并重新上传整个供应商目录。

关于php - Laravel 弃用错误 : idn_to_ascii(): INTL_IDNA_VARIANT_2003 is deprecated,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61385533/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com