As of today (end of january 2019), WebP is now supported across all the major browsers (Edge, Chrome, Firefox, Opera).(PHP 5 >= 5.4.0, PHP 7, PHP 8)
imagewebp — Output a WebP image to browser or file
   Outputs or saves a WebP version of the given image. 
  
imageEin GdImage-Objekt, das von einer der Funktionen zur Bilderzeugung, z. B. imagecreatetruecolor(), zurückgegeben wurde.
fileDer Pfad oder eine offene Stream-Ressource (die nach der Beendigung dieser Funktion automatisch geschlossen wird), in dem bzw. der die Datei gespeichert werden soll. Falls nicht gesetzt oder null, wird der rohe Bilddatenstrom direkt ausgegeben.
quality
       quality ranges from 0 (worst
       quality, smaller file) to 100 (best quality, biggest file).
       If -1 is provided, the default value 80 is used.
      
   Gibt bei Erfolg true zurück. Bei einem Fehler wird false zurückgegeben.
  
Wenn libgd das Bild nicht ausgeben kann, gibt diese Funktion true zurück.
   Throws a ValueError if quality is invalid.
  
| Version | Beschreibung | 
|---|---|
| 8.4.0 | 
       Now throws a ValueError if quality is invalid.
       | 
     
| 8.0.0 | 
  image erwartet nun eine
  GdImage-Instanz; vorher wurde eine gültige
  gd-Ressource erwartet.
  | 
Beispiel #1 Saving an WebP file
<?php
// Create a blank image and add some text
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5,  'WebP with PHP', $text_color);
// Save the image
imagewebp($im, 'php.webp');
?>As of today (end of january 2019), WebP is now supported across all the major browsers (Edge, Chrome, Firefox, Opera).To convert a PNG image to Webp, we can do this:
<?php
// Image
$dir = 'img/countries/';
$name = 'brazil.png';
$newName = 'brazil.webp';
// Create and save
$img = imagecreatefrompng($dir . $name);
imagepalettetotruecolor($img);
imagealphablending($img, true);
imagesavealpha($img, true);
imagewebp($img, $dir . $newName, 100);
imagedestroy($img);
?>Function to save any image to Webp
public static function webpImage($source, $quality = 100, $removeOld = false)
    {
        $dir = pathinfo($source, PATHINFO_DIRNAME);
        $name = pathinfo($source, PATHINFO_FILENAME);
        $destination = $dir . DIRECTORY_SEPARATOR . $name . '.webp';
        $info = getimagesize($source);
        $isAlpha = false;
        if ($info['mime'] == 'image/jpeg')
            $image = imagecreatefromjpeg($source);
        elseif ($isAlpha = $info['mime'] == 'image/gif') {
            $image = imagecreatefromgif($source);
        } elseif ($isAlpha = $info['mime'] == 'image/png') {
            $image = imagecreatefrompng($source);
        } else {
            return $source;
        }
        if ($isAlpha) {
            imagepalettetotruecolor($image);
            imagealphablending($image, true);
            imagesavealpha($image, true);
        }
        imagewebp($image, $destination, $quality);
        if ($removeOld)
            unlink($source);
        return $destination;
    }WebP is not yet supported by Safari, although they are experimenting with it.
Check out https://caniuse.com/#search=webp for the latest support information.