您的位置:

php无法导入excel,php数据库怎么导入

本文目录一览:

php怎么导入excel

fgetcsv 只能导入csv 的文件, 你需要再excel工具里面把excel 文件转换成csv格式

PHP Excel大批量导入崩溃怎么办?

项目需要批量导入excel文件,如果里面有重复的数据要怎么处理呢?每插入一次数据都要到数据库查询么?

回复内容:

项目需要批量导入excel文件,如果里面有重复的数据要怎么处理呢?每插入一次数据都要到数据库查询么?

1、如果里面有重复的数据要怎么处理呢?

1

code可以先判断数据库是否有该数据。/code

2、每插入一次数据都要到数据库查询么

1

code是的。/code

先去重得到没有重复的数据,再批量插入数据库。也可以尝试MYSQL中的insert ignore into或 replace into

如果查询比较慢,对不能重复的字段加唯一键,然后用INSERT IGNORE INTO

php批量导入数据出错

我现在要做的是,把一个产品数据从EXCEL中导入到PHP的MYSQL中,导入的过程中,总是会提示“Allowed memory size of 167772160 bytes exhausted (tried to allocate 689919 bytes) in D:\wamp\www\Company\product\admin\uploadOrder.php on line 167”这个错误,然后我分成第100条导入时,就不会提示这个错误,这个是不是内存溢出,有没有好的解决方法呢?

------解决方案--------------------

php.ini中讲memory_limit选项设置大一点,然后重启apache或nginx就行了

------解决方案--------------------

文件太大了,这样的话可以用source命令直接导入!

------解决方案--------------------

为什么php导入excle出错

//php获取form表单提交的文件信息

$file = $_FILES['execl']['name'];

$tmp_name = $_FILES['execl']['tmp_name'];

//移动上传的文件function d_file_move($file,$filetempname){ $filePath = "./upfile/";//设置上传文件的路径 if(!is_dir($filePath)) mkdir($filePath);//检查并创建文件夹 $time = date('YmdHis',time());//设置文件名,注意设置时区 $extend = strchr($file,'.');//获取文件后缀 $name = $time.$extend;//设置上传后完整的文件名 $uploadfile = $filePath.$name;//文件路径 $res = move_uploaded_file($filetempname,$uploadfile);//通过move_uploaded_file函数移动文件到指定目录 if($res) return $uploadfile;//如果成功返回当前文件路径 return false;}

//通过调用d_file_move函数来移动form表单上传的文件

$file_name = $this-d_file_move($file,$tmp_name);

现在再使用PHP批量导入excel的类,来读取移动后的文件路径,如:

$data = new Spreadsheet_Excel_Reader(); $data-setOutputEncoding('utf-8'); $resval = $data-read($file_name);

这样就可以避开

The filename *.xls is not readable