title: Can this watermark function be improve (PHP)
body: <p>Below is a watermark function I made for my php photo upload script.  I am curious if there is a better way of doing the parts that check for the file type, notice I had to use that part of code 2 times</p>
  
  <pre><code>&lt;?PHP
  function watermark($source_file,$source_width,$source_height,$image_type) {
      //first image below will be large then small in 1line if/else
      $watermarksize = ($source_width &gt; 300) ? '../images/fpwatermark.gif' : '../images/fpwatermark.gif';
      //now add the watermark to the image.
      $watermark = imagecreatefromgif($watermarksize);
      switch ($image_type) {
          case 'gif':
              $image = imagecreatefromgif($source_file);
              break;
          case 'jpg':
              $image = imagecreatefromjpeg($source_file);
              break;
          case 'png':
              $image = imagecreatefrompng($source_file);
              break;
          default:
              $image = imagecreatefromjpeg($source_file);
              break;
      }
      //get the dimensions of the watermark
      list($water_width, $water_height) = getimagesize($watermarksize);
      // Water mark process
      $x = $source_width - $water_width - 8; //horizontal position
      $y = $source_height - $water_height - 8; //vertical positon
      // imagesy($image) can be the source images width
      imagecopymerge($image, $watermark, $x, $y, 0, 0, $water_width, $water_height, 65);
      switch ($image_type) {
          case 'gif':
              imagegif($image, $source_file, 90);
              break;
          case 'jpg':
              imagejpeg($image, $source_file, 90);
              break;
          case 'png':
              imagepng($image, $source_file, 90);
              break;
          default:
              imagejpeg($image, $source_file, 90);
              break;
      }
      imagedestroy($image);
      return $source_file;
  }
  ?&gt;
  </code></pre>