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);

}

php解析压缩包csv文件,php解析csv文件相关推荐

  1. java 解析csv_java解析CSV文件(getCsvData 解析CSV文件 zipFiles 打成压缩包 exportObeEventDataExcel 前端页面响应)...

    //CSVUtil.class为类名 private static final Logger log = Logger.getLogger(CSVUtil.class); //filepath 可以为 ...

  2. java读取csv合适文件_解析-您可以推荐一个Java库来读取(并可能写入)CSV文件吗?...

    Super CSV是读取/解析,验证和映射CSV文件到POJO的绝佳选择! 我们(Super CSV团队)刚刚发布了一个新版本(您可以从SourceForge或Maven下载它). 读取CSV文件 以 ...

  3. Java文件读写和CSV文件解析(读取csv文件的一列或若干列)

    文件类 Java 读文件流的知识不可少,先复习一下吧! OREACLE JDK8 DOCS 文件类是Java IO的一个对象,用于指定文件的相关信息,位置和名称信息.如txt文件,csv文件对Java ...

  4. python解析通达信day文件,生成csv文件,期货历史回测

    import os import struct import datetime# 读取通达信.day文件,并生成对应名称的csv文件 def stock_csv(filepath, name, tar ...

  5. Python读取本地html文件内容存csv

    直接上代码 import os from html2text import html2text import csv file_path = './data' file_names = os.list ...

  6. python为什么找不到csv文件_python读写csv文件的方法(还没试,先记录一下)

    该csv模块定义了以下功能: csv.reader(csvfile,dialect ='excel',** fmtparams) 返回一个reader对象,它将迭代给定csvfile中的行. csvf ...

  7. pythonos pathjson_Python Json数据文件操作原理解析

    引言 接口测试就是数据的测试,在测试之前,需要准备好测试数据,而测试数据可以用数据库.excel.txt和csv方式,当然还有一种方式,那就是使用json文件来储存测试数据.常用的方式就是这些. 设计 ...

  8. php导入csv文件,php实现CSV文件导入和导出

    项目开发中,很多时候要将外部CSV文件导入到数据库中或者将数据导出为CSV文件,那么具体该如何实现呢?本文将使用PHP并结合mysql,实现了CSV格式数据的导入和导出功能. 我们先准备mysql数据 ...

  9. 用python的pandas打开csv文件_使用CSV模块和Pandas在Python中读取和写入CSV文件

    什么是CSV文件? CSV文件是一种纯文本文件,其使用特定的结构来排列表格数据.CSV是一种紧凑,简单且通用的数据交换通用格式.许多在线服务允许其用户将网站中的表格数据导出到CSV文件中.CSV文件将 ...

  10. 在线EXCEL文件数据转换解析工具

    在线EXCEL文件数据转换解析工具 在线EXCEL文件数据转换解析工具 本工具支持将EXCEL文件转解析成JSON,CSV,HTML以及公式格式,直接将文件拖入文件上传区即可实时转换, 数据仅在客户端 ...

最新文章

  1. android内存池,两种常见的内存管理方法:堆和内存池
  2. Ubuntu 14.04安装mysql
  3. redis的过期策略
  4. 图像识别 标注(annotation)的反向优化策略
  5. django QuerySet对象转换成字典对象
  6. C语言代码规范(八)使用const修饰值不允许改变的变量
  7. extjs 方法执行顺序_百战程序员:方法论
  8. [转载] PyTorch: 序列到序列模型(Seq2Seq)实现机器翻译实战
  9. aspx获取aspx.cs中的变量和方法
  10. IRF之ARP-MAD检测
  11. 利用navicat 进行 mysql建表语句转oracle建表语句
  12. android gui工具,搞机助手简约易用的安卓ADB GUI玩机工具箱
  13. Harbor构建企业级私有docker镜像的仓库的开源解决方案
  14. HTML+CSS静态网页设计:(房地产网站设计与实现6页)
  15. 第16课:迁移学习的模型训练
  16. Android之获取外部存储空间解释
  17. SpringBoot+EasyPOI word模板导出,含多张图片
  18. 11s到1s,性能优化之首屏加载
  19. bat文件直接定位到指定目录并等待
  20. 计算机专业用什么轴的键盘,平常爱打游戏,机械键盘应该买什么轴?

热门文章

  1. 【数据结构笔记35】C实现:有序子列的归并算法:递归与非递归的实现
  2. 快照(Snapshot)
  3. 计算机换汉语快捷键,电脑常用快捷键
  4. mybatis3.2.2的一些测试
  5. JAVA读取EMF文件并转化为PNG,JPG,GIF格式
  6. springboot中添加静态资源的方式,默认的静态资源文件夹有哪些
  7. IE浏览器通过代码控制文档对象模式
  8. JAVA读取Properties文件对象常用方法总结
  9. javaWeb基础知识及注意事项
  10. 手机和PC机根本不能挖矿