Laravel ialah rangka kerja PHP popular yang sangat memudahkan proses pembangunan aplikasi web. Laravel Cashier ialah perpustakaan pemprosesan pembayaran yang menyediakan fungsi untuk memproses pembayaran langganan. Ia boleh disepadukan dengan Stripe untuk membolehkan pengguna menjalankan aplikasi dengan keupayaan langganan. Artikel ini akan memperkenalkan cara menggunakan Laravel Cashier untuk melaksanakan pembayaran langganan.
Sebelum menggunakan Laravel Cashier, anda perlu membuat akaun Stripe. Stripe ialah platform awan untuk memproses pembayaran dalam talian, dan APInya boleh disepadukan dengan mudah dengan Laravel Cashier. Lawati tapak web Stripe, buat akaun dan log masuk ke konsol. Dalam konsol, anda boleh menemui kunci API, iaitu maklumat utama yang diperlukan untuk menyepadukan Stripe dalam Laravel Cashier.
Gunakan Komposer untuk memasang Laravel Cashier dalam projek Laravel anda. Di terminal, pergi ke direktori akar projek Laravel anda dan laksanakan arahan berikut:
composer require laravel/cashier
Selepas melaksanakan arahan di atas, Komposer akan memasang kebergantungan yang diperlukan secara automatik dan menambah Laravel Cashier pada projek itu.
Selepas memasang Laravel Cashier, anda perlu mengkonfigurasinya untuk menggunakan Stripe API dengan betul. Mula-mula, buka fail config/services.php dalam projek anda dan tambahkan kod berikut pada fail:
'stripe' => [ 'model' => AppModelsUser::class, 'key' => env('STRIPE_KEY'), 'secret' => env('STRIPE_SECRET'), ],
Kod di atas menyediakan Laravel Cashier dengan maklumat konfigurasi yang diperlukan, termasuk kunci API yang diperlukan untuk menggunakan Stripe dan model pengguna.
Kemudian, konfigurasikan kunci API Stripe dan ID klien Stripe Connect dalam fail .env:
STRIPE_KEY=your-stripe-key STRIPE_SECRET=your-stripe-secret STRIPE_CLIENT_ID=your-stripe-client-id
Integrate Stripe After API, pelan langganan perlu dibuat untuk digunakan dalam aplikasi. Dalam konsol Stripe, navigasi ke tab Produk dan klik Produk Baharu untuk mencipta produk. Selepas membuat produk, buka tab Pengebilan dan klik Rancangan Baharu untuk membuat rancangan. Isikan nama pelan, harga dan tempoh seperti yang diperlukan, kemudian klik "Buat Pelan".
Laravel Cashier menggunakan model pengguna untuk mengurus langganan. Jadi sebelum meneruskan, anda perlu memasukkan beberapa kaedah dalam model pengguna anda. Buka model pengguna dan tambahkan kod berikut pada penghujung fail:
use LaravelCashierBillable; class User extends Model implements AuthenticatableContract, CanResetPasswordContract { use Authenticatable, CanResetPassword, Billable; }
Kod di atas menggunakan sifat Boleh Dibil Laravel Cashier dalam model pengguna. Ini membolehkan menggunakan kaedah berkaitan Laravel Cashier dalam model pengguna.
Sangat mudah untuk melaksanakan fungsi langganan menggunakan Laravel Cashier. Dalam paparan, cuma tambahkan borang berikut:
<form method="POST" action="{{ route('subscribe') }}"> {{ csrf_field() }} <script src="https://checkout.stripe.com/checkout.js" class="stripe-button" data-key="{{ config('services.stripe.key') }}" data-amount="999" data-name="My Awesome Website" data-description="Monthly Subscription" data-image="https://stripe.com/img/documentation/checkout/marketplace.png" data-locale="auto"> </script> </form>
Kod di atas menambah butang langgan Stripe ke tapak web anda. Apabila pengguna mengklik butang, ia akan melompat ke halaman Stripe untuk melengkapkan proses langganan.
Dalam pengawal, cuma tambah kod berikut untuk mengaitkan maklumat langganan dengan model pengguna:
public function subscribe(Request $request) { $user = $request->user(); $user->newSubscription('main', 'plan_id')->create($request->stripeToken); return redirect()->back(); }
Kod di atas akan membuat langganan baharu dan mengaitkannya dengan model pengguna dan menyimpan maklumat pembayaran langganan dalam Stripe. Kemudian, ubah hala pengguna kembali ke halaman dan teruskan menjalankan aplikasi.
Nyahlanggan sangat mudah di Laravel Cashier. Cuma tambah kod berikut dalam pengawal anda untuk membatalkan langganan tertentu:
public function cancel(Request $request) { $user = $request->user(); $user->subscription('main')->cancel(); return redirect()->back(); }
Kod di atas akan membatalkan langganan tertentu dan mengubah hala pengguna kembali ke halaman.
Kesimpulan
Laravel Cashier ialah perpustakaan pemprosesan pembayaran yang berkuasa yang boleh memudahkan proses pembayaran langganan. Dengan menggunakan API Stripe, Laravel Cashier dapat dengan mudah mengintegrasikan proses langganan ke dalam aplikasi Laravel. Melalui panduan artikel ini, anda boleh menggunakan Laravel Cashier dengan mudah untuk melaksanakan fungsi pembayaran langganan.
Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk menggunakan Laravel Cashier untuk melaksanakan pembayaran langganan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!