


Perisian tengah CakePHP: Mengintegrasikan perkhidmatan e-mel dan SMS untuk melaksanakan pemberitahuan mesej
Perisian tengah CakePHP: Mengintegrasikan perkhidmatan e-mel dan SMS untuk melaksanakan pemberitahuan mesej
Pengenalan:
Dalam aplikasi web moden, pemberitahuan mesej merupakan fungsi yang sangat penting. Pengguna perlu menerima maklumat penting daripada sistem, seperti pendaftaran yang berjaya, penetapan semula kata laluan, kemas kini status pesanan, dsb. Untuk mencapai fungsi ini, menyepadukan perkhidmatan e-mel dan SMS telah menjadi pendekatan biasa. Dalam artikel ini, saya akan memperkenalkan cara menggunakan middleware CakePHP untuk melaksanakan fungsi pemberitahuan mesej dan menyediakan beberapa contoh kod khusus.
- Persediaan persekitaran:
Pertama, kita perlu memastikan rangka kerja CakePHP telah dipasang dan dikonfigurasikan dengan betul. Selain itu, kami perlu mempunyai kunci API penyedia perkhidmatan e-mel dan SMS yang sah. Dalam artikel ini, saya akan menggunakan Mailgun sebagai pembekal perkhidmatan mel dan Twilio sebagai pembekal perkhidmatan SMS. - Konfigurasi Perkhidmatan Mel:
Dalam CakePHP, kami boleh menggunakan perkhidmatan e-mel yang disediakan oleh Mailgun dengan mengkonfigurasi tetapan SMTP dalam fail config/app.php.
// app.php 'EmailTransport' => [ 'default' => [ 'className' => 'CakeMailerTransportMailgunTransport', 'apiKey' => 'YOUR_MAILGUN_API_KEY', 'domain' => 'YOUR_MAILGUN_DOMAIN', 'url' => 'YOUR_MAILGUN_API_URL', ], ],
Kami perlu menggantikan YOUR_MAILGUN_DOMAIN
dan YOUR_MAILGUN_API_URL
dengan nilai sebenar. YOUR_MAILGUN_API_KEY
、YOUR_MAILGUN_DOMAIN
和YOUR_MAILGUN_API_URL
替换为实际的值。
- 配置短信服务:
对于短信服务,我们将使用Twilio提供的API。在CakePHP中,我们可以通过在config/app.php文件中配置Twilio设置来使用他们的服务。
// app.php 'Twilio' => [ 'sid' => 'YOUR_TWILIO_SID', 'token' => 'YOUR_TWILIO_TOKEN', 'sender' => 'YOUR_TWILIO_PHONE_NUMBER', ],
同样,我们需要将YOUR_TWILIO_SID
、YOUR_TWILIO_TOKEN
和YOUR_TWILIO_PHONE_NUMBER
- Konfigurasikan perkhidmatan SMS:
// src/Middleware/NotificationMiddleware.php namespace AppMiddleware; use CakeMailerMailerAwareTrait; use CakeMailerEmail; use TwilioRestClient; class NotificationMiddleware { use MailerAwareTrait; public function __invoke($request, $response, $next) { // 执行下一个中间件之前的代码 // ... // 发送电子邮件 $this->getMailer('Default')->send('notification', [$data]); // 发送短信 $twilio = new Client(getenv('TWILIO_SID'), getenv('TWILIO_TOKEN')); $twilio->messages->create( $phoneNumber, [ 'from' => getenv('TWILIO_SENDER'), 'body' => $message, ] ); // 执行下一个中间件之后的代码 // ... return $next($request, $response); } }
Salin selepas log masukBegitu juga, kita perlu menggantikan - Dalam kod, kami menggunakan MailerAwareTrait yang disertakan dengan CakePHP untuk menghantar e-mel. Kami juga menghantar SMS melalui API Twilio. 'pemberitahuan' dalam kod mewakili templat e-mel yang kami buat dalam direktori Mailers dan $data mewakili data yang dihantar ke templat e-mel. Daftar middleware:
// config/bootstrap.php use AppMiddlewareNotificationMiddleware; use CakeHttpMiddlewareQueue; $middlewareQueue = new MiddlewareQueue(); $middlewareQueue->add(new NotificationMiddleware()); // 替换原有的middlewareQueue // ... // 设置新的middlewareQueue $application->setMiddleware($middlewareQueue);
Salin selepas log masukUntuk membolehkan middleware berfungsi, kita perlu mendaftarkannya dengan aplikasi. Kita boleh melakukan ini dengan menambahkan kod berikut pada fail bootstrap.php:
rrreee🎜Dengan cara ini, kami mendaftarkan NotificationMiddleware ke dalam baris gilir middleware aplikasi. 🎜🎜Kesimpulan: 🎜Dengan menggunakan perisian tengah CakePHP, kami boleh menyepadukan perkhidmatan e-mel dan SMS dengan mudah untuk melaksanakan fungsi pemberitahuan mesej. Artikel ini menyediakan beberapa contoh kod yang kami harap dapat membantu anda melaksanakan fungsi yang serupa dalam projek anda sendiri. Sudah tentu, anda juga boleh melanjutkan dan menyesuaikan kod ini mengikut keperluan anda. Semoga berjaya membina aplikasi web yang berkuasa dan berciri penuh dengan CakePHP! 🎜Atas ialah kandungan terperinci Perisian tengah CakePHP: Mengintegrasikan perkhidmatan e-mel dan SMS untuk melaksanakan pemberitahuan mesej. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
- Untuk perkhidmatan SMS, kami akan menggunakan API yang disediakan oleh Twilio. Dalam CakePHP, kami boleh menggunakan perkhidmatan mereka dengan mengkonfigurasi tetapan Twilio dalam fail config/app.php.
YOUR_TWILIO_TOKEN
dan YOUR_TWILIO_PHONE_NUMBER
dengan nilai sebenar. - Kini, kita boleh mula menulis middleware CakePHP untuk melaksanakan fungsi pemberitahuan mesej. Mula-mula, kami mencipta fail bernama NotificationMiddleware.php dan meletakkannya dalam direktori src/Middleware.

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

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

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas





Dalam bab ini, kita akan memahami Pembolehubah Persekitaran, Konfigurasi Umum, Konfigurasi Pangkalan Data dan Konfigurasi E-mel dalam CakePHP.

Bekerja dengan pangkalan data dalam CakePHP adalah sangat mudah. Kami akan memahami operasi CRUD (Buat, Baca, Kemas Kini, Padam) dalam bab ini.

Bagaimana untuk mematikan pemberitahuan mesej dalam Penyemak Imbas Xiaomi secara automatik akan memberitahu anda tentang maklumat terhangat, tetapi ramai rakan tidak tahu cara mematikan pemberitahuan mesej Seterusnya, editor membawa kepada pemain cara mematikan pemberitahuan mesej dalam Xiaomi Pelayar Tutorial, pemain yang berminat datang dan lihat! Cara mematikan pemberitahuan mesej dalam pelayar Xiaomi 1. Mula-mula buka fungsi [Penyemak imbas] dalam telefon bimbit Xiaomi, dan masukkan [Saya] di sudut kanan bawah halaman utama untuk memasuki kawasan khas 2. Kemudian bar fungsi akan kembangkan di bawah, klik [Tetapan] di sebelah kanan Fungsi avatar 3. Kemudian klik [Pengurusan Pemberitahuan Mesej] pada halaman fungsi tetapan 4. Akhir sekali, luncurkan butang di belakang [Terima Pemberitahuan Mesej] untuk mematikan pemberitahuan mesej .

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Dalam bab ini, kita akan mempelajari topik berikut yang berkaitan dengan penghalaan ?

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.
