How to send push notifications from Google Firebase in PHP?

In this tutorial, you will learn how to send push notifications to Android and ios using Google FCM firebase in PHP application.

How to Send Push Notification to Android and IOS using PHP + FCM Firebase?

Just follow the few steps to send push notifications to ios using PHP Firebase FCM:

  • Step 1 – Create PHP Files
  • Step 2 – Create fcm.php File
  • Step 3 – Create send-notification.php File
  • Step 4 – Run Application

Step 1 – Create Index.php File

In this step, create a php file which named index.php. And then add the following code into it:

<!DOCTYPE html>
<html>
<head>
  <title>PHP Send Push Notification To Android & IOS using Google FCM Example</title>
 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
</head>
<body>
 <div class="container">
    <br>
    <div class="row">
      <div class="col-md-9">
        <form action="send-notification.php" method="post" accept-charset="utf-8">
          <div class="form-group">
            <label for="formGroupExampleInput">Device Type</label>
              <select class="form-control" id="device_type" name="device_type" required="">
              <option value="">Select Device type</option>

                    <option value="Android">Android</option>
                    <option value="Iphone">Iphone</option>

              </select>
          </div>
          <div class="form-group">
            <label for="formGroupExampleInput">Notification Id</label>
            <input type="text" name="nId" class="form-control" id="formGroupExampleInput" placeholder="Please enter notification id" required="">

          </div>
          <div class="form-group">
           <button type="submit" id="send_form" class="btn btn-success">Submit</button>
          </div>
        </form>
      </div>
    </div>

</div>
</body>
</html>

Step 2 –  Create fcm.php File

In this step, create a file named fcm.php and add the following code for push notification into it:

Note that, Please make sure to define the Firebase Server API Key to send a request to firebase.

<?php
class FCM {
    function __construct() {
    }
   /**
    * Sending Push Notification
   */
  public function send_notification($registatoin_ids, $notification,$device_type) {
      $url = 'https://fcm.googleapis.com/fcm/send';
      if($device_type == "Android"){
            $fields = array(
                'to' => $registatoin_ids,
                'data' => $notification
            );
      } else {
            $fields = array(
                'to' => $registatoin_ids,
                'notification' => $notification
            );
      }
      // Firebase API Key
      $headers = array('Authorization:key=Your Firebase Server API Key Here','Content-Type:application/json');
     // Open connection
      $ch = curl_init();
      // Set the url, number of POST vars, POST data
      curl_setopt($ch, CURLOPT_URL, $url);
      curl_setopt($ch, CURLOPT_POST, true);
      curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
      // Disabling SSL Certificate support temporarly
      curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
      curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
      $result = curl_exec($ch);
      if ($result === FALSE) {
          die('Curl failed: ' . curl_error($ch));
      }
      curl_close($ch);
  }
}
?>

Step 3 – Create send-notification.php File

In this step, create send-notification.php file and add the following code into it:

<?php
//save crop image in php
if(isset($_POST["nId"]))
{
	$regId =$_POST["nId"];
	$dType =$_POST["device_type"];
	// INCLUDE YOUR FCM FILE
	include_once 'fcm.php';
	$arrNotification= array();

	$arrNotification["body"] ="PHP Push Notification";
	$arrNotification["title"] = "PHP Push Notification";
	$arrNotification["sound"] = "default";
	$arrNotification["type"] = 1;
	$fcm = new FCM();
	$result = $fcm->send_notification($regId, $arrNotification,$dType);
	print_r($result);
}
?>

Step 4 –  Run Application

In this step, open your terminal and execute the following command to quick run this application:

cd project_directory
php -S localhost:8000

Now you can open the following URL on your browser:

http://localhost:8000

Conclusion

In this tutorial, you have learned how to send push notification to ios and android using php fcm.

Recommended PHP Tutorials

AuthorDevendra Dode

Greetings, I'm Devendra Dode, a full-stack developer, entrepreneur, and the proud owner of Tutsmake.com. My passion lies in crafting informative tutorials and offering valuable tips to assist fellow developers on their coding journey. Within my content, I cover a spectrum of technologies, including PHP, Python, JavaScript, jQuery, Laravel, Livewire, CodeIgniter, Node.js, Express.js, Vue.js, Angular.js, React.js, MySQL, MongoDB, REST APIs, Windows, XAMPP, Linux, Ubuntu, Amazon AWS, Composer, SEO, WordPress, SSL, and Bootstrap. Whether you're starting out or looking for advanced examples, I provide step-by-step guides and practical demonstrations to make your learning experience seamless. Let's explore the diverse realms of coding together.

One reply to How to send push notifications from Google Firebase in PHP?

  1. Thanks a lot for this tutorial

Leave a Reply

Your email address will not be published. Required fields are marked *