使用三元变量分配

时间:2018-11-21 12:00:11

标签: php laravel

在laravel中,我有一个控制器

它会获取一堆数据并像这样保存

        $lastinid = $user->onlineApplications()->create($newInsertData);

如果payment_status成功,则我希望发票为1,否则我希望它为0。如何使用三元运算符来实现此目的。

if($lastinid->payment_status == "success"){
      $invoice = 1;
    }

3 个答案:

答案 0 :(得分:0)

$invoice = $lastinid->payment_status == "success" ? 1 : 0;

答案 1 :(得分:0)

您可以在https://secure.php.net/manual/en/language.operators.comparison.php#language.operators.comparison.ternary

上了解有关三元运算符的信息并查看示例。

针对您的情况:

$invoice = ($lastinid->payment_status == "success") ? 1 : 0;

答案 2 :(得分:0)

使用类型转换提示,您甚至可以执行以下操作:

$invoice = (int)($lastinid->payment_status == "success");

这将作为true值转换为整数1并将false转换为整数0的工作。当然,这仅适用于1/0,因为所有其他数字都使用三进制。