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);
}
php解析.csv文件的更多相关文章
- [cocos2dx utils] cocos2dx读取,解析csv文件
在我们的游戏中,经常需要将策划的数值配置成csv文件,所以解析csv文件就是一个很common的logic, 例如如下csv文件: 下面是一个基于cocos2dx 2.2.4的实现类: #ifndef ...
- Qt解析CSV文件
最近需要解析Excel文件,于是顺带写了解析CSV的代码 定义数据类型LX::Sheet #ifndef LX_H #define LX_H #include <QString> #inc ...
- .NET 上传并解析CSV文件存库
1.前端: 放置浏览按钮 <div class="row inner_table text-center"> <input id="fileId&quo ...
- java opencsv解析csv文件
记一次使用opencsv解析csv文件时碰到的坑 最近在开发过程中需要解析csv文件,公司用的解析工具是opencsv,在根据opencsv的官方文档去解析时发现csv文件中含有繁体字,使用其自带的C ...
- 解析 csv文件 java ***最爱那水货
/** * csv文件解析 <br> * wx 微信明细数据 第1行是标题 ,最后2行 是总结 提取数据需要过滤<br> * zfb 支付宝明细数据 前4行 和最后4行是总结 ...
- 如何用Java解析CSV文件
首先看一下csv文件的规则: csv(Comma Separate Values)文件即逗号分隔符文件,它是一种文本文件,可以直接以文本打开,以逗号分隔.windows默认用excel打开.它的格式包 ...
- CSV文件解析工具
package com.common.util; import java.io.BufferedReader; import java.io.FileInputStream; import java. ...
- CSV文件解析
CSV(逗号分隔值文件格式) 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和 ...
- 一个CSV文件解析类
import java.io.BufferedReader; import java.io.FileReader; import java.util.ArrayList; import java.ut ...
随机推荐
- Win10激活KMS
Windows 10是目前微软主推的Windows系统,Win10 相对之前的Win7/8是吸取二者之长,发展而来! 目前新装的Windows10默认没有激活的 芝麻开们:http://pan.bai ...
- 移动应用平台的开发环境的发展演变-elcipse与android studio
这题目摆出来是要谈平台开发和演变和使用经验的,然而,并没有开发相关项目的经验,所以只好说说安装过程了. 1.android环境搭建到hello world(费时7小时....) 原以为android环 ...
- jsoup-处理html中的script数据
/** * 价值在线数据-左边分类抓取 * http://www.valueonline.cn/laws/laws?typeid=96219074211635284 * @author hwaggLe ...
- 教你一招:Word中的文字转换成表格,把表格转换成文字
在使用office软件时,常常会在Word中加入表格,这时候我们一般想到的是,建立表格,然后一格一格的填写;或者用Excel表格制作在复制到Word文档中.其实在Word中就可以将文本文档转换成电子表 ...
- svn 上传出现Cannot accept non-LF lind endings in 'svn:log'
可能是你到cimmit日志的字有svn不认的,重新把长传日志删掉,重新敲一遍就好了
- BZOJ 1968: [Ahoi2005]COMMON 约数研究
1968: [Ahoi2005]COMMON 约数研究 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 2032 Solved: 1537[Submit] ...
- K米点歌APP评测
K米APP评测 产品简介 K米点歌是一款免费的社交K歌手机应用,其手机点歌功能主要在KTV.夜总会,酒吧等K歌场所中使用,当前提供iPhone版本及安卓版本下载使用.——百度百科 评测版本 K米点歌4 ...
- XP---------专区(Windows Exprience)--体验的简写
待完善中 -------------------------------------- 1.0用u盘安装xp系统 用u盘给自己的或者朋友的电脑装上一个系统. 首先当然是下载一个系统文件,下面是本站的最 ...
- 面试题目——《CC150》中等难题
面试题17.1:编写一个函数,不用临时变量,直接交换两个数. 思路:使用差值或者异或 package cc150.middle; public class Exchange { public stat ...
- struts2 s:file标签使用及文件上传例子
<s:form action="uploadaction" method="post" enctype="multipart/form-da ...