美文网首页
CI上传文件到阿里云OSS

CI上传文件到阿里云OSS

作者: 风度翩翩的程序猿 | 来源:发表于2020-09-09 11:29 被阅读0次

    用composer在项目根目录执行以下命令下载sdk

    composer require aliyuncs/oss-sdk-php

    根据个人爱好放在自己喜欢的目录中 (我放在了application下)


    20190409172204628.png

    到CI框架的config.php 中修改下面这个参数使vendor文件夹自动加载(如果你上一步存放的路径和我是一样的就改成true即可,否则就改成自己的路径)

    20190409172352780.png

    接下来就是代码:

    将以下代码复制到libraries目录里面自己建一个文件

    
    <?php defined('BASEPATH') OR exit('No direct script access allowed');
     
    use OSS\OssClient;
    use OSS\Core\OssException;
     
    /**
     * 阿里云OSS存储公共库
     */
    class Aliyun_oss
    {
     
        private $CI_instance;
        private $_oss;
     
        function __construct()
        {
            $this->CI_instance =& get_instance();
            $this->CI_instance->load->config('business/aliyun');
            $config = $this->CI_instance->config->item('oss');
     
            if (isset($this->_oss)) {
                return $this->_oss;
            }
            $this->_oss = new OssClient(
                $config['accessKeyId'],
                $config['accessKeySecret'],
                $config['endpoint']
            );
        }
     
        /**
         * 使用魔术方法捕获所有未注册方法
         * @param  [type] $method    [调用的方法名]
         * @param  [type] $param_arr [调用这个方法所传递的参数]
         * @return [type]            [description]
         */
        public function __call($method, $param_arr)
        {
            return call_user_func_array(array($this->_oss, $method), $param_arr);
        }
     
    }
    

    然后添加oss配置在config.php


    2019040917352058.png

    最后一步,可以在控制器的任何地方调用啦


    20190409173952745.png

    相关文章

      网友评论

          本文标题:CI上传文件到阿里云OSS

          本文链接:https://www.haomeiwen.com/subject/tgkeektx.html