Aliyunoss.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. // by 请勿倒卖,已申请软著,否则追究法律责任
  3. namespace app\aliyunoss;
  4. use OSS\OssClient;
  5. use OSS\Core\OssException;
  6. class Aliyunoss
  7. {
  8. public $config = ["accessKeyId" => IN_ALIYUNOSS_AKI, "accessKeySecret" => IN_ALIYUNOSS_AKS, "endpoint" => "https://" . IN_ALIYUNOSS_EP, "bucket" => IN_ALIYUNOSS_BK, "domain" => "https://" . IN_ALIYUNOSS_BK . "." . IN_ALIYUNOSS_EP . "/", "cdn_domain" => "https://" . IN_ALIYUNOSS_BK . "." . IN_ALIYUNOSS_CDN . "/"];
  9. public $bucket = IN_ALIYUNOSS_BK;
  10. public $url = "";
  11. public $client;
  12. function __construct($_var_0 = [])
  13. {
  14. if (!empty($_var_0)) {
  15. $this->config = $_var_0;
  16. }
  17. $_var_1 = $this->config["accessKeyId"];
  18. $_var_2 = $this->config["accessKeySecret"];
  19. $_var_3 = $this->config["endpoint"];
  20. $this->bucket = $this->config["bucket"];
  21. $this->domain = $this->config["domain"];
  22. $this->cdn_domain = $this->config["cdn_domain"];
  23. try {
  24. $this->client = new OssClient($_var_1, $_var_2, $_var_3);
  25. } catch (OssException $_var_4) {
  26. }
  27. }
  28. function upload($object = '', $file = '')
  29. {
  30. if ($object && $file) {
  31. } else {
  32. if (!$_FILES && !isset($_FILES["file"])) {
  33. return ["msg" => "无法识别的文件"];
  34. }
  35. $_var_5 = date("Ymd-His") . $_FILES["file"]["name"];
  36. $object = "uploads/test/" . $_var_5;
  37. $file = $_FILES["file"]["tmp_name"];
  38. }
  39. try {
  40. $this->client->uploadFile($this->bucket, $object, $file);
  41. $_var_6 = IN_ALIYUNOSS_CDN ? $this->cdn_domain : $this->domain;
  42. return ["src" => $object, "domain_src" => $_var_6 . $object];
  43. } catch (OssException $_var_7) {
  44. return ["msg" => $_var_7->getMessage()];
  45. }
  46. }
  47. function download($_var_8)
  48. {
  49. try {
  50. $_var_9 = $this->client->getObject($this->bucket, $_var_8);
  51. return ["content" => $_var_9, "object" => $_var_8];
  52. } catch (OssException $_var_10) {
  53. return ["msg" => $_var_10->getMessage()];
  54. }
  55. }
  56. function delete($_var_11)
  57. {
  58. try {
  59. $this->client->deleteObject($this->bucket, $_var_11);
  60. return true;
  61. } catch (OssException $_var_12) {
  62. return false;
  63. }
  64. }
  65. function file_exists($object)
  66. {
  67. try {
  68. $this->client->doesObjectExist($this->bucket, $object);
  69. return ["src" => $object, "domain_src" => $this->domain . $object];
  70. } catch (OssException $_var_13) {
  71. return false;
  72. }
  73. }
  74. }