Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel控制器使用if-else创建变量数据库_Php_Laravel - Fatal编程技术网

Php Laravel控制器使用if-else创建变量数据库

Php Laravel控制器使用if-else创建变量数据库,php,laravel,Php,Laravel,我还不熟悉Laravel和PHP。我正在创建一个网站,可以创建一个id,使用我的id登录,生成一个可以作为不同用户以不同视图登录的id。然后我尝试使用if-else withstr\u contains。因此,这是为数据库创建新用户的关键。但仍收到一条错误消息: UserController.php第26行中的ErrorException: 未定义变量:UserID 下面是一些我的UserController.php $usertype = $request['UserType']; $user

我还不熟悉Laravel和PHP。我正在创建一个网站,可以创建一个id,使用我的id登录,生成一个可以作为不同用户以不同视图登录的id。然后我尝试使用if-else with
str\u contains
。因此,这是为数据库创建新用户的关键。但仍收到一条错误消息:

UserController.php第26行中的ErrorException: 未定义变量:UserID

下面是一些我的UserController.php

$usertype = $request['UserType'];
$user1 = str_contains($usertype, 'Customer');
$user2 = str_contains($usertype, 'Marketing');
$user3 = str_contains($usertype, 'Designer');

if($user1 == true){
    $UserID = 'CU';
} else if($user2 == true){
    $UserID = 'MK';
} else if($user3 == true){
    $UserID = 'DG';
}

$UserID = $UserID+rand(10000, 99999); //line 26  
因此,第26行被称为
$UserID
,以添加一个生成随机数字

我发现我的代码有什么问题。这不是因为变量的声明,而是输出
1
not
true
stru所包含的

$usertype = $request['UserType'];

if(str_contains($usertype, 'Customer') == 1){
    $UserID = 'CU';
}else if(str_contains($usertype, 'Designer') == 1){
    $UserID = 'MK';
}else if(str_contains($usertype, 'Marketing') == 1){
    $UserID = 'DG';
}

$UserID .= rand(10000, 99999);

这是因为您的
if
条件与条件不匹配,这就是
$userID
未初始化的原因。您必须首先初始化
$userID

$UserID = ''; //initialize with empty string or what ever you want
if($user1 == true){
   $UserID = 'CU';}
else if($user2 == true){
   $UserID = 'MK';}
else if($user3 == true){
   $UserID = 'DG';}

$UserID = $UserID+rand(10000, 99999); 

添加
else$userID=0
。请务必在使用前声明变量,因此在
if
之前声明它,谢谢。它正在处理错误,但如果else条件现在不起作用,则为现在。因此,我的数据库“$UserID”包含的只是随机数字,而不是我添加的if-else条件。谢谢。它正在处理错误,但如果else条件现在不起作用,则为现在。因此,我的数据库
$UserID
只包含随机化数值,而不包含我添加的条件if-else。是
str\u包含的
错误还是if-else条件。您必须检查
$user1
$user2
$user3
的输出