• php解析.csv文件


    public function actionImport() {
         //post请求过来的
    $fileName = $_FILES['file']['name']; $fileTmpName = $_FILES['file']['tmp_name']; //判断是否选择了上传的文件 if (empty($fileName)) { $data['message'] = "请选择要上传的文件"; return $this->render("batch_add", $data); } //判断选择上传的文件是不是csv格式 if (explode(".", $fileName)[1] != "csv") { $data['message'] = "请选择csv格式的文件上传"; return $this->render("batch_add", $data); } //创建一个空数组,预放imageUrl $imageCollection = []; //打开要读的文件 $handle = fopen($fileTmpName, 'r'); //解析csv文件 while (!feof($handle)) { //fgets方法按行读 $result = fgets($handle); //判断读到的每一行是否有值 if (!empty($result)) { $arrResult = explode(",", $result); $name = $arrResult[0]; $age = $arrResult[1]; $gender = $arrResult[2]; //图片的原路径 $imagePath = $arrResult[3]; //图片的名字 $image = basename($imagePath); $data['message'] = Person::savePerson($name, $age, $gender, $image); if ($data['message'] == 'add successful') { //将每个图片的uri放到数组中 array_push($imageCollection, $imagePath); } } } //关闭文件流 fclose($handle); //关闭文件流之后才能上传图片,注意:流和流是不能嵌套使用的 if (!empty($imageCollection)) { foreach ($imageCollection as $value) { //将图片上传到服务器上 move_uploaded_file($imagePath, dirname(__DIR__) . '/web/images/'.date("Ymd").'/'.$image); } } return $this->render("batch_add", $data); }
  • 相关阅读:
    vscode里的NPM脚本
    Vue之生命周期activated与created使用
    分享10个超棒的设计素材网站
    使用node搭建静态资源服务器
    vue 动态组件的传值
    一文带你入门正则表达式
    一文告诉你git如何使用
    一文告诉你三种常见跨域解决方案
    一文告诉你原型与原型链是什么?
    一文告诉你 Event Loop 是什么?
  • 原文地址:https://www.cnblogs.com/yyh1/p/5766109.html
Copyright © 2020-2023  润新知