gpt4 book ai didi

php - 为什么带有 request->only() 的 if 语句不起作用? (Laravel)

转载 作者:行者123 更新时间:2023-12-04 16:31:09 24 4
gpt4 key购买 nike

我的 if 语句有问题,但我没有
知道如何修复它。我想要做的是如果有人输入正确的
vCode,用户将被创建。如果 vCode 不正确,则不会创建用户并且 $message 变量将为:vCode invalid。

但即使输入正确的 vCode,消息仍然显示 vCode 无效。
这是我的代码:

public function store(Request $request) {

$vCode = $request->only('vcode');

if ($vCode == 'stackoverflow') {
// request only the form-inputs with the names: firstname, lastname and email.
$oUser = User::create($request->only('firstname', 'lastname', 'email'));
$oUser->createPassword();
$oUser->setRole(2);
$oUser->save();
$message = $oUser->getFullname().'succesfully created';
} else {
$message = "vCode valid";
}

return back()->with('successmessage', $message);
}

最佳答案

$request->only('vcode')返回一个只有一个元素的关联数组。

如果您在 only() 中有三件事打电话,你的结果可能是:

$request->only('name', 'age', 'cheese');
// ['name' => 'Pingu', 'age' => '22', 'cheese' => 'gorgonzola']

但是如果你只有一个元素,你仍然得到一个数组,它恰好更小:
$request->only('vcode');
// ['vcode' => 'stackoverflow']

所以你需要改变你的 if健康)状况:
if ($vCode['vcode'] == 'stackoverflow') {
// should work
}

或者您可以将其作为单个值获取:
$vCode = $request->input('vcode');
if ($vCode == 'stackoverflow') {
// should work
}

关于php - 为什么带有 request->only() 的 if 语句不起作用? (Laravel),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38271551/

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