技术标签: php
<?php
//引入类库
include "../../jcsrm/lib/phpexcel/PHPExcel.php";
include "../../jcsrm/config.php";
// include "../lib/phpexcel/PHPExcel.php";
// include "../config.php";
//include "../lib/phpexcel/PHPExcel/IOFactory.php"
/*读取excel文件,并进行相应处理*/
ini_set('memory_limit', '1024M');
$date = date("Ymd");
set_time_limit (0);
date_default_timezone_set("PRC");
$stime1=microtime(true); //用了来获取运行开始时间
// 读取excel文件
try {
$inputFileType = PHPExcel_IOFactory::identify($inputFileName);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);
} catch(Exception $e) {
die("加载文件发生错误");
}
$startTime = time(); //返回当前时间的Unix 时间戳
PHPExcel_CachedObjectStorageFactory::cache_to_wincache; //解决内存问题
// echo $objPHPExcel = PHPExcel_IOFactory::load($fileName);//获取sheet表格数目
$sheet = $objPHPExcel->getSheet();//默认选中sheet0表
$rowCount = $sheet->getHighestRow();//获取表格行数
$columnCount = $sheet->getHighestColumn();//获取表格列数
$etime1=microtime(true);//获取程序执行结束的时间
$total1=$etime1-$stime1; //计算差值
ini_set('execution_time', 2000000);//秒为单位,自己根据需要定义
$stime=microtime(true);
$date = date("Ymd");
$inputFileName = "../wuhandata/07_orderlist/sz_orderlist_"."$date".".xlsx";
include"../getExcelFunction.php";
// addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。
// 预定义字符是:
// 单引号(')
// 双引号(")
// 反斜杠(\)
// NULL
// $search = array(" "," ","\n","\r","\t",";",";");
// $replace = array("","","","","","","");
// str_replace($search, $replace, $str);
$count = 0;
for($currentRow =2;$currentRow <= $rowCount;$currentRow++)
{
//if($currentRow>$rowCount) {break; } else{ continue;}
$barcode= addslashes($objPHPExcel->getActiveSheet()->getCell("A".$currentRow)->getValue());//获取A列的值
$order_no= addslashes($objPHPExcel->getActiveSheet()->getCell("B".$currentRow)->getValue());//获取B列的值
$project_code= addslashes($objPHPExcel->getActiveSheet()->getCell("C".$currentRow)->getValue());//获取C列的值
$fg_part_no= addslashes($objPHPExcel->getActiveSheet()->getCell("D".$currentRow)->getValue());//获取D列的值
$serial_number= addslashes($objPHPExcel->getActiveSheet()->getCell("E".$currentRow)->getValue());//获取E列的值
$material_part_no= addslashes($objPHPExcel->getActiveSheet()->getCell("F".$currentRow)->getValue());//获取F列的值
$material_name= addslashes($objPHPExcel->getActiveSheet()->getCell("G".$currentRow)->getValue());//获取G列的值
$mat_parameter= addslashes($objPHPExcel->getActiveSheet()->getCell("H".$currentRow)->getValue());//获取H列的值
$qty= addslashes($objPHPExcel->getActiveSheet()->getCell("I".$currentRow)->getValue());//获取I列的值
$unit= addslashes($objPHPExcel->getActiveSheet()->getCell("J".$currentRow)->getValue());//获取J列的值
$vendor= addslashes($objPHPExcel->getActiveSheet()->getCell("K".$currentRow)->getValue());//获取K列的值
$upload_time=date("Y-m-d H:i:s");
//$serial_number= addslashes($objPHPExcel->getActiveSheet()->getCell("K".$currentRow)->getValue());//获取L列的值
iconv_set_encoding ( "internal_encoding" ,"UTF-8") ;//iconv_set_encoding("internal_encoding", "UTF-8");
// $material_name=iconv('utf-8','utf-8', $material_name);//消除乱码
//$vendor=iconv('utf-8','utf-8', $vendor);//消除乱码
$sql1 = "INSERT INTO x_orderlist
(barcode,order_no,project_code,fg_part_no,material_part_no,material_name,mat_parameter,qty,unit,vendor,serial_number,upload_time)
VALUES
('".$barcode."','".$order_no."','".$project_code."','".$fg_part_no."',
'".$material_part_no."','".$material_name."',
'".$mat_parameter."','".$qty."','".$unit."','".$vendor."','".$serial_number."','".$upload_time."')";
$sql2 = "SELECT * FROM x_orderlist WHERE barcode = '$barcode'";
$retval2= mysqli_query( $db, $sql2);
$selectBarcode = mysqli_fetch_array($retval2,MYSQLI_ASSOC);
$sql3 = "UPDATE x_orderlist set order_no = '$order_no',project_code = '$project_code',fg_part_no='$fg_part_no',material_part_no='$material_part_no',material_name='$material_name',mat_parameter='$mat_parameter',qty='$qty',unit='$unit',vendor='$vendor',serial_number='$serial_number',upload_time='$upload_time' where barcode='$barcode' ";
if($selectBarcode['order_no'] == null){
//判断该订单是否存在,如果不存在就执行插入语句
$retval1 = mysqli_query( $db, $sql1);
echo "<br>插入<br>";
}
else{
$retval3 = mysqli_query( $db, $sql3);//如果存在就执行更新语句
echo "更新";
}
$count++;
//if($currentRow==$rowCount+1){break;}
}
mysql_close($db);
$etime=microtime(true);//获取程序执行结束的时间
$total=$etime-$stime; //计算差值
echo "<br />读取excel执行时间为:{
$total1} 秒";
echo "<br />写入数据库执行时间为:{
$total} 秒";
echo "<div>行数: ".$rowCount." 列数:".$columnCount."</div>";
//循环结束,判断全部数据是否插入
if($currentRow > $rowCount){
//echo '文件插入成功!';
$message='文件上传成功!';
print "{success:true,msg:'".$message."'}";
}
else {
//echo '文件插入失败!';
$message='文件上传失败!';
print "{success:false,msg:'".$message."'}";
}
// echo '1';
?>
1. du -sh /* 排除目录proc# du -sh /* --exclude="proc"参考: 1.在du命令里如何排除其中一个目录 _du排除目录
关于ThinkPHP框架开发微信公众号在微信后台配置服务器URL提示Token验证失败的解决方案
.1 RabbitMQ 消息队列1.1 使用场景_rabbitmq消息队列的使用场景
采用Docker的方式部署python的流程:1、Docker hub拉取python镜像。2、创建容器并在容器内增加项目所需第三方库3、将步骤二的容器制作为镜像4、将镜像用于内网环境。_yht@ubuntu:~/webase-deploy$ python3 deploy.py pulldockerall start pull docke
tomcat作为日常开发的web应用服务器,给开发测试带来了很多便利,tomcat的运行依赖JDK的支持,在安装JDK时经常会配置环境变量:JAVA_HOME、CLASSPAT,且需要添加path变量。把应用部署到tomcat下时大多数不需要修改运行环境,但是有时候需要修改JDK的版本,从可以修改tomcat运行时的JDK版本,我们可以知道使用tomcat时不时必须要配置JDK环境变量,因为我们可......_一个tomcat可以运行不同jdk打出来的包吗
安装 minikube 踩坑和填坑。环境说明宿主机的环境操作系统:Windows 10虚拟化:VirtualBox 6.0说明:在 Win 10 系统里尝试过 Hyper-V,感觉不好用,所以还是回归到了 VirtualBox。如果你用的是 Hyper-V,或者是 MacOS/Linux 操作系统,中间部分流程应该也可以参考。如果有疑问可以查看 官方文档。版本Miniku...
STM32F107的串口通讯总结STM32F107的串口通讯总结 1. STM32的一般规律,首先要使用串口必先使能串口时钟,比如串口1: RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE); 2. 串口使用的GPIO口设置: 首先使能GPIO的时钟RCC_APB2PeriphClockCmd(RCC_stm32f107串口通信
文章目录1.用筛选法求100之内的素数2.用选择法对10个整数进行排序。3.求一个3*3的整型矩阵对角线元素之和4.有一个已排好的数组,要求输入·一个数后,按原来的排序规则将它插入数组中。5.将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1,要求改为1,4,5,6,8.6.输出以下的杨辉三角(要求输出10行)7.输出魔方阵。所谓魔方阵是指这样的方阵,它的每一行,每一列和对角线之和均相等。求输出1-n的平方构成的魔方阵。8.找出一个二维数组的鞍点,即该位置上的元素在该行最大,在该列上最小,也_c语音编程设计练习
性能调优在整个项目中尤为重要。对于初级开发人员往往都不知道如何对性能进行调优。其实性能调优主要分为两个方面:一方面是硬件方面的调优,一方面是软件方面的调优。本文章主要介绍Kettle方面的性能调优以及效率的提升。一、Kettle性能调优1. commit size表输出的提交记录数量(默认1000),具体根据数量大小来修改。修改前速度(7447/s):修改后(7992/s):2. 数据库连接调参基于上层优化方案继续调优useServerPrepStmts=falserewriteBatc_kettle提交记录数量
2010-09-17 13:09 by T2噬菌体,154746阅读,49评论,收藏,编辑0、写在前面的话 我个人一直很喜欢算法一类的东西,在我看来算法是人类智慧的精华,其中蕴含着无与伦比的美感。而每次将学过的算法应用到实际中,并解决了实际问题后,那种快感更是我在其它地方体会不到的。 一直想写关于算法的博文,..._贝叶斯算法中主要强调了哪种思想
Win32SDKC/C++Gui高效程序之高效开发工具。基于Windowsx.H宏或自编代码。免费分发,仅需前往。编辑器,还是VSCode牛逼。该代码主要适用于C++,C语言需容我稍作修改。该代码集合共15000+行,VSCode Snippet最大可开到20000+行。目前涵盖Win32常见、常用基本类创建、函数、Setter/Getter;并包含Win32主要、常用WM_消息;融合了MessageCrack的功能,并完善了其没有完成的部分函数。并包含了Gdi绘画典型、应用案例。望助我朝..._snippet在线工具
由于工作需要,需要在SuSE 10上安装Oracle 10g,进行相关测试,做了一下笔记。一位同事说得好,记性好不如烂笔头。1.安装必要的包,安装命令是:rpm -ivh libaio-0.3.104-14.2.x86_64.rpmrpm -ivh libaio-devel-0.3.104-14.2.x86_64.rpm2.建立oracle用户groupadd dbau...