cari
Rumahrangka kerja phpLaravelPembangunan Laravel: Bagaimana untuk mengendalikan pembayaran langganan menggunakan Laravel Cashier?

Dalam era Internet, model langganan telah menjadi salah satu model perniagaan utama. Banyak syarikat boleh mencapai aliran hasil yang lebih stabil melalui model langganan. Laravel Cashier menyediakan cara mudah untuk mengendalikan pembayaran langganan.

Laravel Cashier ialah komponen Laravel yang dicipta oleh Taylor Otwell, yang boleh membantu pembangun memproses pembayaran langganan berasaskan Stripe. Stripe ialah perkhidmatan pembayaran dalam talian popular yang menyediakan keupayaan pemprosesan pembayaran yang selamat, fleksibel dan berkuasa. Dalam artikel ini, kami akan menerangkan cara menggunakan Laravel Cashier untuk mengendalikan pembayaran langganan dalam projek Laravel.

  1. Pasang Laravel Cashier

Mula-mula, kita perlu memasang Laravel Cashier menggunakan komposer. Jalankan arahan berikut dalam terminal untuk melengkapkan pemasangan:

composer require laravel/cashier
  1. Konfigurasikan Kunci API Jalur

Seterusnya, kita perlu mengkonfigurasi kunci API Stripe dalam projek Laravel. Selepas membuat akaun di tapak web Stripe, anda boleh mencari kunci API Stripe di bawah menu "API". Buka fail config/services.php dan tambahkan kod berikut:

'stripe' => [
    'key' => env('STRIPE_KEY'),
    'secret' => env('STRIPE_SECRET'),
],

Fail konfigurasi ini menyimpan kunci API Stripe dalam fail .env Pastikan fail .env mengandungi kandungan berikut:

STRIPE_KEY=your_stripe_key
STRIPE_SECRET=your_stripe_secret
  1. Buat Pelan Langganan

Selepas membuat pelan langganan di tapak web Stripe, kami perlu menambahkan pelan ini pada aplikasi Laravel supaya ia boleh digunakan sebagai pilihan pembayaran. Buka fail app/Providers/AppServiceProvider.php dan tambah kod berikut:

use LaravelCashierCashier;

public function boot()
{
    Cashier::useSubscriptionModel(YourSubscriptionModel::class);
    Cashier::useCurrency('usd', '$');
    Cashier::usePlans([
        'monthly' => [
            'name' => 'Monthly Subscription',
            'description' => 'Monthly subscription',
            'price' => 10,
        ],
        'yearly' => [
            'name' => 'Yearly Subscription',
            'description' => 'Yearly subscription',
            'price' => 50,
        ],
    ]);
}

Blok kod ini mengandungi dua elemen utama: Elemen pertama mentakrifkan langganan anda menggunakan model langganan, yang perlu anda buat sebagai apl anda bahagian; elemen kedua mentakrifkan pelan langganan anda dan digunakan untuk membuat dan memaparkan semua pilihan langganan yang tersedia.

  1. Langganan dan Pembayaran

Kini kami boleh membuat langganan untuk pengguna dalam aplikasi web. Laravel Cashier menyediakan beberapa kaedah mudah yang membolehkan kami mengurus langganan pengguna dengan mudah:

// 为用户创建订阅
$user->newSubscription('main', 'monthly')->create($token);

// 获取用户当前订阅
$user->subscription('main');

// 取消用户订阅
$user->subscription('main')->cancel();

// 恢复用户订阅
$user->subscription('main')->resume();

// 对用户订阅进行切换
$user->subscription('main')->swap('yearly');

Dalam contoh kod di atas, kami mula-mula membuat langganan baharu untuk pengguna menggunakan kaedah newSubscription() yang Parameter pertama bagi kaedah menentukan nama langganan, dan parameter kedua menentukan nama pelan. Kami kemudian menggunakan kaedah create() untuk mengendalikan pembayaran, menghantar token Stripe sebagai parameter. Kami juga boleh menggunakan kaedah langganan() untuk melaksanakan operasi lain seperti mendapatkan, membatalkan, memulihkan dan menukar langganan pengguna.

  1. Tunjukkan maklumat langganan

Akhir sekali, kami boleh memaparkan maklumat langganan semasa pengguna pada halaman profil mereka. Berikut ialah contoh kod ringkas:

@if ($user->subscribed('main'))
    <p><b>Plan:</b> {{ $user->subscription('main')->stripe_plan }}</p>
    <p><b>Renewal Date:</b> {{ $user->subscription('main')->ends_at->toFormattedDateString() }}</p>
@endif

Blok kod ini mengandungi pernyataan bersyarat mudah yang menyemak sama ada pengguna melanggan aplikasi. Jika pengguna sudah melanggan, kami boleh memaparkan nama pelan pengguna dan tarikh pembaharuan.

Ringkasan

Dalam artikel ini, kami membincangkan cara menggunakan Laravel Cashier untuk mengendalikan pembayaran langganan. Mula-mula, kami memasang Laravel Cashier dan mengkonfigurasi kunci API Stripe. Kami kemudian membuat beberapa pelan langganan dan menggantikan pelan yang terbina dalam Laravel Cashier dengan mereka. Seterusnya, kami menggunakan beberapa kaedah untuk pengguna membuat, membatalkan dan menyambung semula langganan. Akhir sekali, kami memaparkan maklumat langganan semasa pengguna pada halaman profil mereka. Saya harap artikel ini membantu anda Jika anda mempunyai sebarang soalan atau cadangan, sila tinggalkan di ruangan komen di bawah.

Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk mengendalikan pembayaran langganan menggunakan Laravel Cashier?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Beyond the Zoom Call: Strategi Kreatif untuk Menghubungkan Pasukan TeragihBeyond the Zoom Call: Strategi Kreatif untuk Menghubungkan Pasukan TeragihApr 26, 2025 am 12:24 AM

Toenhanceengagementandcohesionamongdistributedteamsbeyondzoom, pelaksanaanTheseStregies: 1) Organizirtualcoffeebreaksforinformalchats, 2) Useasynchronoustoolslikeslackfornon-workdiscussions, 3) identgamificoWithteamgames

Apakah perubahan pecah dalam versi Laravel terkini?Apakah perubahan pecah dalam versi Laravel terkini?Apr 26, 2025 am 12:23 AM

Laravel10introducesseveralbreakingchanges: 1) itrequiresphp8.1orhigher, 2) therouteserviceProvidernowuseSabootmethforloadingRoutes, 3) thewithTimeStamps () methodeNeloquentRelationShipsisdePrecated, dan 4)

Paradoks Produktiviti: Mengekalkan Fokus dan Motivasi dalam Tetapan JauhParadoks Produktiviti: Mengekalkan Fokus dan Motivasi dalam Tetapan JauhApr 26, 2025 am 12:17 AM

TomaintainfocusandmotivationInremotework, createAstructureDenvironment, managedigitaldistractions, fostermotivationthroughsocialIntionsandgoalsetting, containstwork-lifebalance, anduseapproprateetechnology.1) SetupadedicationWorksPaceAndSticktoaroutine.

Membina Kepercayaan Dari Afar: Memupuk Kerjasama dalam Persekitaran TeragihMembina Kepercayaan Dari Afar: Memupuk Kerjasama dalam Persekitaran TeragihApr 26, 2025 am 12:13 AM

TofostercollaborationandTrustinremoteteams, ExplectionTheSestrated: 1) menubuhkan, StructuredCommunicationWithPersonalCheck-ins, 2) useCollaborativeToolSfortransparency, 3) pengiktirafan dan 4) fosteracultureoftrustandadaptability.

Apakah ciri -ciri utama versi Laravel terkini?Apakah ciri -ciri utama versi Laravel terkini?Apr 26, 2025 am 12:01 AM

Versi terbaru dari ciri -ciri utama Laravel termasuk: 1. Ciri -ciri ini meningkatkan kecekapan pembangunan dan prestasi aplikasi, tetapi perlu digunakan dengan berhati -hati untuk mengelakkan masalah yang berpotensi.

Ilusi kemasukan: menangani pengasingan dan kesepian dalam kerja terpencilIlusi kemasukan: menangani pengasingan dan kesepian dalam kerja terpencilApr 25, 2025 am 12:28 AM

Tocombatisolationandlonelinessinremotework, companesshouldimplementregular, articlefulinteractions, provideequalgrowthopposities, andusetechnologyefectively.1) FostergenuineconnectionnectionThoughvoughvirtualcoffeebreaksandpersonalusharing.2) Ensureremorsharing

Laravel untuk pembangunan penuh: panduan komprehensifLaravel untuk pembangunan penuh: panduan komprehensifApr 25, 2025 am 12:27 AM

Laravelispopularforfull-stackdevelopmentbeCausofersaseamlessblendofbackendpowerandfrontendflexibility.1) ITSBackendCapabilities, likeeloquentorm, SimplifyDatabaseIntions.2) thebladetemplatingengineAllowsforclean, dynamichtmltes.3)

Pertunjukan Persidangan Video: Memilih platform yang sesuai untuk mesyuarat jauhPertunjukan Persidangan Video: Memilih platform yang sesuai untuk mesyuarat jauhApr 25, 2025 am 12:26 AM

Faktor utama dalam memilih platform persidangan video termasuk antara muka pengguna, keselamatan, dan fungsi. 1) Antara muka pengguna harus intuitif, seperti zoom. 2) Keselamatan perlu diberi perhatian, dan pasukan Microsoft menyediakan penyulitan akhir-ke-akhir. 3) Fungsi perlu memadankan keperluan, GoogLemeet sesuai untuk mesyuarat pendek, dan Ciscowebex menyediakan alat kerjasama lanjutan.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini