cls_oss.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?php
  2. /*
  3. * Krpano100 oss上传下载文件
  4. * ============================================================================
  5. * 技术支持:2015-2099 成都世纪川翔科技有限公司
  6. * 官网地址: http://www.krpano100.com
  7. * ----------------------------------------------------------------------------
  8. * $Author: wanghao 932625974#qq.com $
  9. * $Id: index.php 28028 2016-03-09Z wanghao $
  10. */
  11. if(!defined('IN_T'))
  12. {
  13. die('hacking attempt');
  14. }
  15. require_once __DIR__.'/../krpano/cls_common_operation.php';
  16. require_once 'cls_oss_factory.php';
  17. class Oss extends KrOperation
  18. {
  19. public function downloadFile($obj , $localfile){
  20. $ossClient = Oss_Factory::getOssClient();
  21. $options = array(
  22. $ossClient::OSS_FILE_DOWNLOAD => $localfile,
  23. );
  24. try{
  25. $ossClient->getObject($GLOBALS['_lang']['oss_config']['bucket'], $obj, $options);
  26. } catch(OssException $e) {
  27. printf($e->getMessage() . "\n");
  28. return null;
  29. }
  30. return $localfile;
  31. }
  32. public function uploadFile($local_file , $origin_file){
  33. $ossClient = Oss_Factory::getOssClient();
  34. try{
  35. $ossClient->uploadFile($GLOBALS['_lang']['oss_config']['bucket'],$origin_file, $local_file);
  36. } catch(OssException $e) {
  37. printf($e->getMessage() . "\n");
  38. return;
  39. }
  40. }
  41. public function video_thumb($obj,$time){
  42. $thumb = 'video_thumb/'.Common::guid().'.jpg';
  43. $arr = array(
  44. 'Action' => 'SubmitSnapshotJob',
  45. 'Input' => '{"Bucket":"'.$GLOBALS['_lang']['oss_config']['bucket'].'","Location":"'.$GLOBALS['_lang']['oss_config']['location'].'","Object":"'.$obj.'"}',
  46. 'SnapshotConfig' => '{"OutputFile": {"Bucket": "'.$GLOBALS['_lang']['oss_config']['location'].'","Location": "'.$GLOBALS['_lang']['oss_config']['location'].'","Object": "'.$thumb.'"},"Time": "'.($time*1000).'","FrameType":"normal"}'
  47. );
  48. $ossMts = Oss_Factory::getOssMts();
  49. $result = Curl::callWebServer($ossMts->getSignUrl($arr));
  50. if($result['SnapshotJob']['State']=='Success')
  51. return $GLOBALS['_lang']['cdn_host'].$thumb;
  52. else
  53. return $GLOBALS['_lang']['host'].'static/images/def_video_thumb.jpg';
  54. }
  55. }
  56. ?>