em...
之前做项目的时候用到过OSS,后来考虑过假如没有OSS的话,怎么自己做一台服务器处理呢?
不过后来因为懒,这个问题被我扔在了TODO里,直到今天
今天乐老板问我,怎么用PHP做文件上传处理。
我第一个想到的就是TODO里的这个。
然后就开始动手写代码了。
CURL请求
模拟表单上传文件,会用到CURL请求,在之前的开发中大家也经常用用到。
这里就不去啰嗦那么多参数了。
请求函数
    public function index()
    {
        $url = "http://app.localhost/index.php/test/test";
        $post_data = array(
            "foo" => "bar",
            //要上传的本地文件地址
            "upload" => new \CURLFile('robots.txt')
        );
        $ch = curl_init();
        curl_setopt($ch , CURLOPT_URL , $url);
        curl_setopt($ch , CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch , CURLOPT_POST, 1);
        curl_setopt($ch , CURLOPT_POSTFIELDS, $post_data);
        $output = curl_exec($ch);
        curl_close($ch);
        echo $output;
    }处理函数
    public function test()
    {
        //echo var_export($_FILES,true);die;
        //echo file_get_contents($_FILES['upload']['tmp_name']);
        copy($_FILES['upload']['tmp_name'], "./log_copy.txt");
        return json(['name'=>'log_copy.tx']);
    }效果图:
上传前

上传请求

上传后

然后就可以看到文件上传到了,这里没有跨服务器,不过类似的
注意,这个函数是 PHP 5.5以上的版本才行,低版本的我也懒得去翻文档了。
http://php.net/manual/zh/class.curlfile.php
em.... 大致就这些了,又水了一篇
上一篇: 微信小程序笔记...