2017-01-10 10 views
8

私はLaravelのキャッシャーパッケージを通じてサブスクリプションプランに加入しました。ユーザーが次に請求する日付を表示したいと思っていますが、これはBillableの特性では利用できないようです。Laravel Cashierから次の請求日を取得

次の請求日を取得するにはどうすればよいですか? ありがとう! - data[0]私は唯一の単一のサブスクリプションを持っているユーザーでこれをテストしてみた

// Retrieve the timestamp from Stripe 
$timestamp = $user -> asStripeCustomer()["subscriptions"] -> data[0]["current_period_end"]; 

// Cast to Carbon instance and return 
return \Carbon\Carbon::createFromTimeStamp($timestamp) -> toFormattedDateString(); 

注:

答えて

6

ソリューションはasStripeCustomerメソッドを使用することです。

複数のサブスクリプション、またはユーザーがキャンセルして別のサブスクリプションを開始した場合は、このコードを変更する必要があります。

+0

このソリューションは、私のために働きました。 @ John1984、あなた自身の答えを受け入れることはOKです。 –

0

サブスクリプションには、そのサブスクリプションの値だけにアクセスできるようにする->asStripeSubscription()メソッドもあります。だから、あなたができる:前回の回答で

// Retrieve the timestamp from Stripe 
$timestamp = $subscription->current_period_end; 

// Cast to Carbon instance and return 
return \Carbon\Carbon::createFromTimeStamp($timestamp)->toFormattedDateString(); 
0

ビルを、ここに私のために働いているものです:

private function getSubscriptionRenewDate($plan) 
{ 
    $sub = Auth::user()->subscription($plan)->asStripeSubscription(); 
    return Carbon::createFromTimeStamp($sub->current_period_end)->format('F jS, Y'); 
} 
関連する問題