php - Laravel 5.1 - 检查日期是否过期

标签 php laravel laravel-5.1

我正在做电子商务,我创建了:

-Session "cart" with all products attributes ( price, id, quantity, category etc)

-CouponController.php


namespace dixard\Http\Controllers;

use Illuminate\Http\Request;

use dixard\Http\Requests;
use dixard\Http\Controllers\Controller;

use dixard\Coupon;
use dixard\Http\Controllers\Carbon\Carbon;

class CouponController extends Controller

public function postCoupon(Request $request)
        {

            $cart = \Session::get('cart');

            $mytime = Carbon\Carbon::now(); // today

            // i check if code coupon exist into my DB

            $coupon = Coupon::where('code', $request->get('coupon'))->first();

            if (!empty($coupon) && $coupon->expire_date ) {


                // i need check IF coupon exist AND date not expired --> i will put a new price into my session cart products.  

            }

        }

Model Coupon.php


protected $table = 'coupons';

    protected $fillable = [

    'code', // code of coupon
    'price', // price discount
    'expire_date', // expire date of coupon

    ];

我的问题

我想:
  • 与我的 CouponController 检查代码优惠券是否过期
  • 如果过期返回一个简单的消息“优惠券无效”
  • 如果优惠券代码存在于我的数据库中并且没有过期,我需要创建一个带有优惠券价格值的新变量,例如“$discount = Coupon->price”,这样我就可以将我的折扣价格传递给我的结帐 View 。

  • 我怎样才能做到这一点 ?

    谢谢你的帮助! (我读了一些关于碳的东西,但我不明白)

    最佳答案

    使用 date mutators为了使expire_date自动字段 Carbon 实例。

    class Coupon extends Model
    {
        /**
         * The attributes that should be mutated to dates.
         *
         * @var array
         */
        protected $dates = ['expire_date'];
    }
    

    所以在那之后我认为你只需要检查优惠券的到期日期是否是 future 的日期。
    if (!empty($coupon) && $coupon->expire_date->isFuture() ) {
        // valid coupon
    }
    else{
        return redirect()->back()->withErrors(['coupon' => 'Coupon is not valid']);
    }
    

    关于php - Laravel 5.1 - 检查日期是否过期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37541854/

    相关文章:

    php - Nelmio Api 文档包 : Documentating required Parameters

    php - Laravel GuzzleHTTP XML 响应 JSON

    php - 返回路线 View 而不是 Controller

    laravel - 如何使用 Laravel 创建一个 mysql 数据库

    php - Dockerfile php-fpm 未满足的依赖项

    PHPUnit\Framework\TestCase 未找到 Symfony 4

    php - Laravel Ardent 多对多关系抛出错误

    php - laravel 5.1 从 mysql 返回乱码

    php - 从包含在php中的 Blade 模板中访问变量

    php - PHP代码在哪里解释?