Heim  >  Artikel  >  Backend-Entwicklung  >  php文件上传(强大文件图片上传类)_PHP教程

php文件上传(强大文件图片上传类)_PHP教程

WBOY
WBOYOriginal
2016-07-20 11:08:26893Durchsuche

php文件上传(强大文件图片上传类)这款文件上传实用代码,可以方便的上传你指定的文件或图片,同时也可以快速的限制上传图片文件类或大小。

php教程文件上传(强大文件图片上传类)
这款文件上传实用代码,可以方便的上传你指定的文件或图片,同时也可以快速的限制上传图片文件类或大小。

/*
 * created on 2010-6-21
 *
 * the class for image to upload
 *
 * made by s71ence
 *
 * @$user_id
 * @$max_file_size
 * @$max_image_side
 * @$destination_folder
 *
 * return:
 * @$_cookie['img_path']
 * @$img_unfind
 * @$img_type
 * @$mkdir_warry
 * @$img_side_too_big
 * @$img_exist
 * @$img_move
 * @$img_upload_sucess
 */
 

header('content-type:text/html;charset=utf-8');
 
 class image_upload extends fn_function
 {
 private $user_id;
 private $max_file_size; //allow the image's size
 private $max_image_side; //allow the image's side
 private $destination_folder; //image's storage path
 private $img_preview;
 private $img_preview_size;
 private $cookie_set; //the cookie's name

 function __construct($user_id,$max_file_size,$max_image_side,$destination_folder,$img_preview,$img_preview_size,$cookie_set)
 {
  $this->user_id=$user_id;
  $this->max_file_size=$max_file_size;
  $this->max_image_side=$max_image_side;
  $this->destination_folder=$destination_folder;
  $this->img_preview=$img_preview;
  $this->img_preview_size=$img_preview_size;
  $this->cookie_set=$cookie_set;
  $this->get_date();
  $this->get_image_type();
 }

 private function get_date()
 {
  $this->date=fn_function::get_server_date();
  return $this->date;
 }

 function get_image_type()
 {
  $this->up_img_types=array(
            'image/jpg',
            'image/jpeg',
            'image/png',
            'image/pjpeg',
            'image/gif',
            'image/bmp',
            'image/x-png'
        );

  return $this->up_img_types;
 }

 function upload_image()
 {
  if ($_server['request_method'] == 'post')
  {
   //check the iamge is exist
   if (!is_uploaded_file($_files["upfile"]["tmp_name"]))
   {
    return $img_unfind=fn_function::alert_msg('图片不存在!');
    exit;
      }

      $file = $_files["upfile"];

   //check the iamge's size
      if($this->max_file_size       {
       return $img_side_too_big=fn_function::alert_msg('图片大小超过系统允许最大值!');
       exit;
      }

      //check the iamge's type
      if(!in_array($file["type"], $this->up_img_types))
      {
       return $img_type=fn_function::alert_msg('图片类型不符!');
       exit;
      }

      if(!file_exists($this->destination_folder))
      {
       if(!fn_function::mkdirs($this->destination_folder))
       {
        return $mkdir_warry=fn_function::alert_msg('目录创建失败!');
        exit;
       }
      }

      $file_name=$file["tmp_name"];
      $image_size = getimagesize($file_name);
      $pinfo=pathinfo($file["name"]);
      $file_type=$pinfo['extension'];
      $destination = $this->destination_folder.time().".".$file_type;
   setcookie($this->cookie_set, $destination);

   if($image_size[0]>$this->max_image_side || $image_size[1]>$this->max_image_side)
   {
    return $img_side_too_big=fn_function::alert_msg('图片分辨率超过系统允许最大值!');
    exit;
   }

   $overwrite="";
   if (file_exists($destination) && $overwrite != true)
   {
    return $img_exist=fn_function::alert_msg('同名文件已经存在了!');
    exit;
      }

      if(!move_uploaded_file ($file_name, $destination))
      {
       return $img_move=fn_function::alert_msg('移动文件出错!');
       exit;
      }

   $img_upload_sucess="上传成功
";
   if($this->img_preview==1)
   {
    $img_src="

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/444883.htmlTechArticlephp文件上传(强大文件图片上传类)这款文件上传实用代码,可以方便的上传你指定的文件或图片,同时也可以快速的限制上传图片文件类...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn