首页 > 其他 > 详细

根据目录名将某个指定目录下的所有文件名以一定的规则插入到一个表中

时间:2016-12-02 16:12:21      阅读:198      评论:0      收藏:0      [点我收藏+]

  最近项目遇到一个需求,就是把某个目录的所有文件的名称以一定的规则插入到一个表中,首先来看下badge表结构:

  技术分享

  目录名称为‘Picture/Badge/‘,文件的命名也是以一定的规则来命名的,例如: balldate_1_1_sl.png,match_1_10_1_1_gr.png,apply_1_50_sl.png,,,如果把balldate_1_1插入到

   badge表,那么type=1,first_index=1,second_index=1,path=‘Picture/Badge/balldate_1_1_sl.png‘;

  1.获取这个目录下的所有文件的名称,

    $file_names = scandir(public_path(‘/Picture/Badge‘));

    unset($file_names[0],$file_name2[1]);(因为$file_names目录下的前2个目录是.和..文件)

    $data_array = array();

    foreach($file_names as $key => $file_name){

      $new_file = substr($file_name,0,strrpos($file_names,‘.‘);//去掉balldate_1_1.png的后缀.png

      $explode_data = explode(‘_‘,$new_file);  //将

      $data[‘type‘] = $explode_data[0];

      $data[‘first_index‘] = $explode_data[1];

      $data[‘second_index‘] = $explode_data[2];

      $data[‘is_highlight‘] = $explode_data[3] == ‘sl‘ ? 1 : 0;

      $data[‘path‘] = sprintf(‘/Upload/Picture/Badge/%s‘,$file_name);

      $data_array[] = $data;

    }

    DB::table(‘badge‘)->insert($data_array);

 

 

    

根据目录名将某个指定目录下的所有文件名以一定的规则插入到一个表中

原文:http://www.cnblogs.com/maoaji/p/6126115.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!