OssController.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. <?php
  2. namespace backend\controllers;
  3. use Yii;
  4. use yii\web\Controller;
  5. use yii\filters\AccessControl;
  6. use yii\helpers\Json;
  7. use OSS\OssClient;
  8. use OSS\Core\OssException;
  9. /**
  10. *
  11. */
  12. class OssController extends BackendController{
  13. public function actionDemo()
  14. {
  15. $accessKeyId = "jIDNrMhDswHnaApr"; ;
  16. $accessKeySecret = "hZgNkwAqloRWpnFX9m8NhoClPNOqBm";
  17. $endpoint = "oss-cn-hangzhou.aliyuncs.com";
  18. $object = "myFirstObject";
  19. $content = "Hi, OSS.";
  20. try {
  21. $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
  22. } catch (OssException $e) {
  23. print $e->getMessage();
  24. }
  25. $bucket = "huahuibao";
  26. $object = "shop1.jpg";
  27. $filePath = '/usr/local/nginx/html/huahuibao/frontend/web/images/shop1.jpg';
  28. try{
  29. $ossClient->uploadFile($bucket, $object, $filePath);
  30. } catch(OssException $e) {
  31. printf(__FUNCTION__ . ": FAILED\n");
  32. printf($e->getMessage() . "\n");
  33. return;
  34. }
  35. print(__FUNCTION__ . ": OK" . "\n");
  36. /*
  37. try {
  38. $r = $ossClient->createBucket($bucket);
  39. } catch (OssException $e) {
  40. print $e->getMessage();
  41. }
  42. try {
  43. $r = $ossClient->putObject($bucket, $object, $content);
  44. } catch (OssException $e) {
  45. print $e->getMessage();
  46. }
  47. $bucketListInfo = $ossClient->listBuckets();
  48. $bucketList = $bucketListInfo->getBucketList();
  49. foreach($bucketList as $bucket) {
  50. print($bucket->getLocation() . "\t" . $bucket->getName() . "\t" . $bucket->getCreatedate() . "\n");
  51. }
  52. */
  53. }
  54. /**
  55. * 上传指定的本地文件内容
  56. *
  57. * @param OssClient $ossClient OSSClient实例
  58. * @param string $bucket 存储空间名称
  59. * @return null
  60. */
  61. function uploadFile($ossClient, $bucket)
  62. {
  63. $bucket = "huahuibao";
  64. $object = "oss-php-sdk-test/upload-test-object-name.txt";
  65. $filePath = __FILE__;
  66. try{
  67. $ossClient->uploadFile($bucket, $object, $filePath);
  68. } catch(OssException $e) {
  69. printf(__FUNCTION__ . ": FAILED\n");
  70. printf($e->getMessage() . "\n");
  71. return;
  72. }
  73. print(__FUNCTION__ . ": OK" . "\n");
  74. }
  75. function actionWeixinUpload()
  76. {
  77. $PicUrl = (string)$PicUrl;
  78. if(empty($PicUrl)){
  79. Yii::$app->end();
  80. }
  81. $folder = Yii::getAlias('@webroot').'/../../images';
  82. $pre = '/weixinChat/'.date ( 'Y') . '/'.date('m').'/'.date("d").'/';
  83. if (! file_exists ( $folder.$pre ))
  84. mkdir ( $folder . $pre, 0777,true);
  85. $randString = stringUtil::buildOrderNo($userId);
  86. $name = md5($randString).'.jpg';
  87. $fullFileName = $folder.$pre.$name;
  88. $fileName = $pre.$name;
  89. $curl = new curl\Curl();
  90. $result = $curl->get($PicUrl);
  91. $fp2 = @fopen($fullFileName,'a');//文件大小
  92. fwrite($fp2,$result);
  93. fclose($fp2);
  94. $accessKeyId = "jIDNrMhDswHnaApr"; ;
  95. $accessKeySecret = "hZgNkwAqloRWpnFX9m8NhoClPNOqBm";
  96. $endpoint = "oss-cn-hangzhou.aliyuncs.com";
  97. try {
  98. $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
  99. } catch (OssException $e) {
  100. print $e->getMessage();
  101. }
  102. $bucket = "huahuibao";
  103. try{
  104. $ossClient->uploadFile($bucket, $name, $fullFileName);
  105. $Content = "<img src='http://huahuibao.oss-cn-hangzhou.aliyuncs.com/".$name."' style='width:20%;' />";
  106. } catch(OssException $e) {
  107. //printf(__FUNCTION__ . ": FAILED\n");
  108. //printf($e->getMessage() . "\n");
  109. //return;
  110. }
  111. }
  112. }