Rumah > rangka kerja php > Laravel > teks badan

Bagaimana untuk menghantar mesej teks dalam laravel

PHPz
Lepaskan: 2023-04-21 13:56:32
asal
793 orang telah melayarinya

Laravel ialah rangka kerja PHP sumber terbuka yang sangat popular yang menyediakan satu siri ciri mudah yang membolehkan pembangun membina aplikasi web dengan lebih cepat. Salah satunya adalah menghantar mesej teks. Dalam artikel ini, kita akan belajar cara menghantar SMS menggunakan Laravel.

Dalam Laravel, kami boleh menghantar mesej teks dengan menggunakan API pembekal perkhidmatan SMS. Pembekal perkhidmatan SMS yang biasa digunakan termasuk Twilio, Nexmo dan Plivo. Dalam artikel ini, kami akan menerima pakai Twilio sebagai pembekal perkhidmatan SMS kami.

Menggunakan Twilio untuk menghantar mesej teks memerlukan Twilio SDK dipasang Anda boleh menggunakan Composer untuk memasangnya. Pada terminal anda, masukkan arahan berikut:

composer require twilio/sdk
Salin selepas log masuk

Setelah pemasangan selesai, tambah kandungan berikut pada fail konfigurasi config/app.php:

'providers' => [
  ...
  Twilio\Rest\ClientServiceProvider::class,
],

'aliases' => [
  ...
  'Twilio' => Twilio\Rest\ClientFacade::class,
],
Salin selepas log masuk

Ini akan menambah Twilio SDK Ditambah pada aplikasi Laravel.

Seterusnya, kami perlu menyediakan maklumat akaun Twilio. Tambahkan kandungan berikut dalam fail .env:

TWILIO_SID=your-account-sid
TWILIO_AUTH_TOKEN=your-auth-token
TWILIO_PHONE_NUMBER=your-twilio-phone-number
Salin selepas log masuk

di mana your-account-sid dan your-auth-token ialah SID dan Auth Token akaun Twilio anda dan your-twilio-phone-nombor ialah Nombor telefon untuk akaun Twilio anda.

Seterusnya, kita boleh menulis kod untuk menghantar mesej teks. Dalam aplikasi Laravel kami, kami boleh menggunakan kod berikut dalam pengawal untuk menghantar SMS:

use Illuminate\Http\Request;
use Twilio\Rest\Client;

class SMSController extends Controller
{
  public function sendSMS(Request $request)
  {
    $accountSid = env('TWILIO_SID');
    $authToken = env('TWILIO_AUTH_TOKEN');
    $twilioPhoneNumber = env('TWILIO_PHONE_NUMBER');

    $client = new Client($accountSid, $authToken);

    $client->messages->create(
        $request->input('recipient'), // 接收人的电话号码
        [
            'from' => $twilioPhoneNumber,
            'body' => $request->input('message') // 短信内容
        ]
    );
  }
}
Salin selepas log masuk

Dalam kod di atas, kami mula-mula mendapatkan maklumat akaun Twilio dalam fail .env dan kemudian menciptanya oleh Twilio pelanggan untuk menghantar mesej teks.

Pembolehubah $mesej dalam kod ialah kandungan mesej teks yang ingin kami hantar dan pembolehubah $recipient ialah nombor telefon penerima yang kami ingin hantar mesej teks itu. Di sini kami menganggap bahawa borang kami mempunyai kotak input bernama mesej dan kotak input bernama penerima.

Fungsi pengesahan borang Laravel boleh memastikan bahawa input borang kami adalah sah. Sebagai contoh, kita boleh memasukkan kod berikut dalam kaedah storan pengawal untuk mengesahkan input borang:

use Illuminate\Http\Request;
use Twilio\Rest\Client;
use Illuminate\Support\Facades\Validator;

class SMSController extends Controller
{
  public function sendSMS(Request $request)
  {
    $validator = Validator::make($request->all(), [
        'recipient' => 'required',
        'message' => 'required',
    ]);

    if ($validator->fails()) {
        return redirect('sms')
                    ->withErrors($validator)
                    ->withInput();
    }

    $accountSid = env('TWILIO_SID');
    $authToken = env('TWILIO_AUTH_TOKEN');
    $twilioPhoneNumber = env('TWILIO_PHONE_NUMBER');

    $client = new Client($accountSid, $authToken);

    $client->messages->create(
        $request->input('recipient'), // 接收人的电话号码
        [
            'from' => $twilioPhoneNumber,
            'body' => $request->input('message') // 短信内容
        ]
    );
  }
}
Salin selepas log masuk

Dengan pengesahan ini, kami boleh memastikan bahawa kedua-dua medan penerima dan medan mesej telah diisi.

Apabila kami mengisi kandungan mesej teks dalam borang dan klik butang hantar, kaedah sendSMS dalam SMSController akan dipanggil, dan kaedah sendSMS akan menggunakan Twilio SDK untuk menghantar mesej teks.

Ringkasan

Dalam artikel ini, kami mempelajari cara menghantar SMS menggunakan Twilio dalam Laravel. Dengan beberapa baris kod, kami boleh menambah kefungsian SMS pada aplikasi kami dengan mudah, menjadikan aplikasi kami lebih berkuasa, kaya dan mudah digunakan.

Atas ialah kandungan terperinci Bagaimana untuk menghantar mesej teks dalam laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!