TinyPng.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: xiaofeng
  5. * Date: 2018/4/10
  6. * Time: 上午10:10
  7. */
  8. namespace backend\server;
  9. use Yii;
  10. //use Tinify\Tinify;
  11. use yii\log\FileTarget;
  12. use common\models\TinypngRecord;
  13. class TinyPng
  14. {
  15. /*
  16. * 处理压缩图片
  17. * @params imgname 图片名称 可以是 string and array
  18. * @params url 图片路径,绝对路径
  19. * @params uid 用户ID
  20. * @params source 来源
  21. * */
  22. public function CompressImg($data)
  23. {
  24. // if(TINYPNG == true)
  25. // {
  26. // try{
  27. //
  28. // if(is_string($data['imgname']))
  29. // {
  30. // $data['imgname'] = explode(',',$data['imgname']);
  31. // }
  32. // $this->SetKey();
  33. // $tinyModel = new TinypngRecord();
  34. // foreach ($data['imgname'] as &$val)
  35. // {
  36. // $path = $data['url'].$val;
  37. //// $imgSize = getimagesize($path);
  38. // $Filesize = filesize($path);
  39. // if($Filesize != false)
  40. // {
  41. // $source = \Tinify\fromFile($path);
  42. // $result = $source->toFile($path); //成功返回字节数
  43. // if($result > 1)
  44. // {
  45. // $_model = clone $tinyModel;
  46. // $_model->img_name = $val;
  47. // $_model->path = $data['url'];
  48. // $_model->uid = $data['uid'];
  49. // $_model->source = $data['source'];
  50. // $_model->end_size = $result;
  51. // $_model->start_size = $Filesize;
  52. // $_model->insert(false);
  53. // }
  54. // }
  55. // }
  56. // }catch (\Exception $e){
  57. // $log = new FileTarget();
  58. // $log->logFile = Yii::$app->getRuntimePath().'/tinify/'.date('Ymd').'.log';
  59. // $log->messages[] = [json_encode(Yii::$app->request->post().'错误信息:'.$e),1,'application',microtime(true)];
  60. // $log->export();
  61. // }
  62. // }
  63. }
  64. private function SetKey()
  65. {
  66. // \Tinify\setKey(Yii::$app->params['TinifyApiKey']);
  67. }
  68. }