PHP通过文件名获取文件信息,将其复制到新目录

时间:2019-01-21
本文章向大家介绍PHP通过文件名获取文件信息,将其复制到新目录,主要包括PHP通过文件名获取文件信息,将其复制到新目录使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1.数据结构

Array
(
    [0] => Array
        (
            [id] => 219
            [enterprise_name] => 青牛
            [static] => 1
            [create_time] => 1541671526
            [company_name] => 张家港市三兴医疗器械有限公司
            [pic] => /static/pvenderjpg/qingniu.jpg
        )

    [1] => Array
        (
            [id] => 339
            [enterprise_name] => 一帆风顺
            [static] => 1
            [create_time] => 1541671526
            [company_name] => 四川普瑞斯生物科技有限公司
            [pic] => /static/pvenderjpg/yifanfengshun.jpg
        )

    [2] => Array
        (
            [id] => 281
            [enterprise_name] => 驼人/强国
            [static] => 1
            [create_time] => 1541671526
            [company_name] => 河南驼人医疗器械集团有限公司
            [pic] => /static/pvenderjpg/henantuoren.jpg
        )

2.循环拼接,获取旧文件目录

public function aaaa(Request $request)
    {
        $shop_list = Db::name("product_shop")
            ->field("p_id")
            ->select();

        $shop_lists = [];
        foreach($shop_list as $k =>$v){
            if(!in_array($v,$shop_lists)){
                $shop_lists[$k] = $v;
            }
        }

        foreach($shop_lists as $k => $v){
            $enter[] = Db::name("enterprise")
                ->where("id",$v["p_id"])
                ->find();
        }


        //循环数据  拼接字段信息
        foreach($enter as $k => $v){
            $file = ".".$v['pic']; //旧目录
            //basename获取文件名包括后缀  拼接成一个新的目录
            $newFile = Config::get("ceshi_img")."/".basename(".".$v['pic']); //新目录
            //如果文件存在 执行 可避免报错 终止系统执行
            if(is_file($file)){
                copy($file,$newFile); //拷贝到新目录
                echo '111<br/>';
            }
            unlink($file); //删除旧目录下的文件
        }
    }