分為兩個(gè)文件侣颂,采用原始php簡(jiǎn)單粗暴的說明用法
shenshu.php 接收2個(gè)GET參數(shù)orderid胰苏,account径缅。后面的類會(huì)根據(jù)此參數(shù)創(chuàng)建目錄
訪問方式http://xxxxxxxx.com/page/shenshu.php?account=13xxxxxxx8xx&orderid=00000
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>申訴</title>
<link rel="stylesheet">
</head>
<body>
<p>申訴</p>
<form method="post" action="upload_shenshu.php" enctype="multipart/form-data">
<div class="input-group">
<label for="file">文件名:</label>
<input type="hidden" name="orderid" value="<?php echo $_GET['orderid'] ?>">
<input type="hidden" name="account" value="<?php echo $_GET['account']?>">
<input type="file" name="upfile" value=""><br>
<input type="submit" name="submit" value="提交">
</div>
</form>
</body>
</html>
upload_shenshu.php
header("Content-type: text/html; charset=utf-8");
$orderid=$_POST['orderid'];
$account=$_POST['account'];
$path = dirname(__DIR__)."/upload/shenshu/$account/$orderid/";
if (!is_dir($path)){
? ? mkdir ($path,0777,true);
}
//文件后綴
$houzui = pathinfo($_FILES['upfile']['name']);
//文件名
$filename = $account.'_'.$orderid.'.'.$houzui['extension'];
$imgurl = "http://xxxxxx.com/upload/shenshu/$account/$orderid/".$filename;
$FILE_SAVE_PATH = '../upload/shenshu/'.$account.'/'.$orderid.'/'.$filename;
if(move_uploaded_file($_FILES['upfile']['tmp_name'],$FILE_SAVE_PATH)){
? ? $image = new Image($FILE_SAVE_PATH);
? ? $image->percent = 0.2;
? ? $image->openImage();
? ? $image->thumpImage();
? ? $image->showImage();
? ? unlink($FILE_SAVE_PATH);
? ? $image->saveImage($FILE_SAVE_PATH);
? ? echo '<h1>上傳成功</h1>'."<br>";
? ? echo "<h1>您的賬號(hào)為$account</h1><br>";
? ? echo "<img src='$imgurl'>";
}
class Image{
? ? private $src;
? ? private $imageinfo;
? ? private $image;
? ? public? $percent = 0.1;
? ? public function __construct($src){
? ? ? ? $this->src = $src;
}
? ? /**
打開圖片
*/
? ? public function openImage(){
? ? ? ? list($width, $height, $type, $attr) = getimagesize($this->src);
? ? ? ? $this->imageinfo = array(
? ? ? ? ? ? 'width'=>$width,
? ? ? ? ? ? 'height'=>$height,
? ? ? ? ? ? 'type'=>image_type_to_extension($type,false),
? ? ? ? ? ? 'attr'=>$attr
? ? ? ? );
? ? ? ? $fun = "imagecreatefrom".$this->imageinfo['type'];
? ? ? ? $this->image = $fun($this->src);
}
? ? /**
操作圖片
*/
? ? public function thumpImage(){
? ? ? ? $new_width = $this->imageinfo['width'] * $this->percent;
? ? ? ? $new_height = $this->imageinfo['height'] * $this->percent;
? ? ? ? $image_thump = imagecreatetruecolor($new_width,$new_height);
? ? ? ? //將原圖復(fù)制帶圖片載體上面猪腕,并且按照一定比例壓縮,極大的保持了清晰度
? ? ? ? imagecopyresampled($image_thump,$this->image,0,0,0,0,$new_width,$new_height,$this->imageinfo['width'],$this->imageinfo['height']);
? ? ? ? imagedestroy($this->image);
? ? ? ? $this->image =? ? $image_thump;
}
? ? /**
輸出圖片
*/
? ? public function showImage(){
? ? ? ? header('Content-Type: image/'.$this->imageinfo['type']);
? ? ? ? $funcs = "image".$this->imageinfo['type'];
? ? ? ? $funcs($this->image);
}
? ? /**
保存圖片到硬盤
*/
? ? public function saveImage($name){
? ? ? ? $funcs = "image".$this->imageinfo['type'];
? ? ? ? $funcs($this->image,$name.'.'.$this->imageinfo['type']);
}
? ? /**
銷毀圖片
*/
? ? public function __destruct(){
? ? ? ? imagedestroy($this->image);
}
}