PHP错误,IF语句太多,需要第二视图

PHP错误,IF语句太多,需要第二视图,php,if-statement,syntax,Php,If Statement,Syntax,我迷失在if,else语句中,无法用明显简单的问题找出正确的语法 我有三种情况,code我要找的是保存在DTB中的,或者是硬编码和代码开始code\u 1-或者根本没有code 第一个定义的变量$code $code = Discount::where('code',$discount_code) 1] 让我们检查变量$code是否在数据库中或返回0 if (!is_null($code) !== false){ $response['discount'] = $code->dis

我迷失在if,
else
语句中,无法用明显简单的问题找出正确的语法

我有三种情况,
code
我要找的是保存在DTB中的,或者是硬编码和代码开始
code\u 1-
或者根本没有
code

第一个定义的变量
$code

$code = Discount::where('code',$discount_code)
1] 让我们检查变量
$code
是否在数据库中或返回0

if (!is_null($code) !== false){
   $response['discount'] = $code->discount;
   } else {
     $response['valid'] = false;
     $response['discount'] = 0;          
    
2] 变量不在DTB中,而是硬编码的
code\u 1-
这种类型的代码总是从
code\u 1-
开始,因此函数
strpos
可以提供帮助

我的问题是,
code
不在数据库中

if (is_null($code) = (strpos($discount_code, 'CODE-')) {
    $response['valid'] = true;
    $response['discount'] = 50;
3]
code
未硬处理或保存在数据库中

?
所有这些条件可以合并在一起吗

更新1

如果(strpos($折扣_代码,'code-')!==false){

=>
如果$code=null大于strpos(…

        if (!is_null($code) !== false) {
            $referal_uid = $this->usersRepo->getIdByHash($discount_code);
            $userExists = User::find($referal_uid);
            $different_user = ($referal_uid !== Auth::id() ? true : false);
                if ($userExists && $different_user)
                {
                    $response['valid'] = true;
                    $response['discount'] = $code->discount;
                    $response['referal'] = $userExists->email;

                } else {
                    $response['valid'] = false;
                    $response['discount'] = 0;
                    $response['referal'] = '';

                }

                if (strpos($discount_code, 'CODE-') !== false) {
                    $referal_uid = $this->usersRepo->getIdByHash($discount_code);
                    $userExists = User::find($referal_uid);
                    $different_user = ($referal_uid !== Auth::id() ? true : false);
                    if ($userExists && $different_user)
                    {
                        $response['valid'] = true;
                        $response['discount'] = 5;
                        $response['referal'] = $userExists->email;
                    }
                    return $response;
                }
                
                return $response;
            }
        }

使用
的目的是什么?\u null
?我的adea如何首先查看数据库,因为代码也可能在数据库之外,也许我不正确如果你这样尝试,你会得到什么?
code=Discount::where('code',$Discount_code)->first();
dd($code);
@EncangCutbray Debugbar::info($code)返回#属性:数组:10[▼ “id”=>58“订阅”=>11422“学生”=>N“折扣”=>89.0“到期”=>“2020-10-06 00:00:00”使用“=>R”“代码”=>“代码dLZQpa”创建于“=>”2020-09-26 09:47:36“更新于”=>“2020-09-26 09:47:36”]