SAE 上传图片(本地图片和网络图片)

1.远程图片保存至Storage

PHP源码

[php]  view plain  copy
 print ?
  1. <?php  
  2. $s = new SaeStorage();  
  3. $img = file_get_contents('https://www.baidu.com/img/bd_logo.png');  //括号中的为远程图片地址  
  4. $s->write ( 'public' ,  'b.png' , $img );      
  5. ?>  
其中【public】为 Storage的名称;【b.png】为图片名称,格式可以自己任意设置格式,改成b.png均能正常显示,且大小不变;



2.本地图片上传至Storage

upload.html
[html]  view plain  copy
 print ?
  1. <html>  
  2. <head>  
  3. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />  
  4. </head>  
  5. <body>  
  6. <div id="container">  
  7. <form action="upload.php" method="post" enctype="multipart/form-data">  
  8. <p><input type="file" name="filename" /></p>  
  9. <input type="submit"  id="postBtn" value="上传图片">  
  10. </form>    
  11. </div>  
  12. </body>  
  13. </html>  

upload.PHP

[php]  view plain  copy
 print ?
  1. <?php  
  2. $filename = 'filename';  
  3. $files = $_FILES[$filename];  
  4. $name'asitela-'.time().'.jpg';  
  5. $form_data =$files['tmp_name'];  
  6. $s2 = new SaeStorage();  
  7. $img = new SaeImage();  
  8. $img_data = file_get_contents($form_data);//获取本地上传的图片数据  
  9. $img->setData($img_data);  
  10. $img->resize(180,180); //图片缩放为180*180  
  11. $img->improve();//提高图片质量的函数  
  12. $new_data = $img->exec(); // 执行处理并返回处理后的二进制数据  
  13. $s2->write('public',$name,$new_data);//将public修改为自己的storage 名称  
  14. $url$s2->getUrl('public',$name);//将public修改为自己的storage 名称echo "文件名:".$name."<br/>";  
  15. echo "Image url:".$url."<br/>";  
  16. echo "<img src='$url' />";  
  17. ?>  

猜你喜欢

转载自blog.csdn.net/summonyyq/article/details/77306682
sae