我测试是支持的CSV,SQL,TXT
其实其他格式也可以,只不过我用不到而已
速度是差不多是每秒一万吧
<?php set_time_limit(0); ignore_user_abort(true); include('sgk.php'); echo "<br><br>"; ?> <?php function array_iconv($data,$output = 'GBK') { $encode_arr = array('UTF-8','ASCII','GBK','GB2312','BIG5','JIS','eucjp-win','sjis-win','EUC-JP'); $encoded = mb_detect_encoding($data, $encode_arr);//自动判断编码 if (!is_array($data)) { return mb_convert_encoding($data, $output, $encoded); } else { foreach ($data as $key=>$val) { if(is_array($val)) { $data[$key] = array_iconv($val, $input, $output); } else { $data[$key] = mb_convert_encoding($data, $output, $encoded); } } return $data; } } function microtime_float(){ return microtime(true); } if ($_SESSION['id']<>''){ if (@$_POST["submit"]<>""){ if ((($_FILES["file"]["type"] == "text/plain") || ($_FILES["file"]["type"] == "application/vnd.ms-excel") || ($_FILES["file"]["type"] == "application/octet-stream") || ($_FILES["file"]["type"] == "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")) && ($_FILES["file"]["size"] < 198102805)) { if ($_FILES["file"]["error"] > 0) { echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; } else { $name=$_FILES["file"]["name"]; $name=iconv('utf-8', 'GB2312//IGNORE', $_FILES['file']['name']); echo "Upload: " . $_FILES["file"]["name"] . "<br />"; echo "Size: " . ($_FILES["file"]["size"] / 1048576) . " Mb<br />"; $exit= pathinfo($_FILES["file"]["name"], PATHINFO_EXTENSION); $exit='.' .$exit; if ($exit==".asp" or $exit==".php" or $exit==".jsp" OR $exit==".aspx"){ echo "我擦,你想做什么?"; exit; } $size=filesize($_FILES["file"]["tmp_name"]); $_FILES["file"]["name"]=md5($_FILES["file"]["name"].$size).$exit; if (file_exists("uploadhehe/" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " 已经存在 "; } else { move_uploaded_file($_FILES["file"]["tmp_name"], "uploadhehe/" . $_FILES["file"]["name"]); echo "<br>开始自动处理文件<br>"; $begin = microtime_float(); $file="uploadhehe/" . $_FILES["file"]["name"]; $handle = @fopen($file, "r"); //$handle=array_iconv('utf-8','gbk',$handle); $total=0; $over=0; if ($handle) { $sql="INSERT INTO [dbo].[own_user_data1] ([Name],[Context],[md5],[data]) VALUES"; $num=0; $_FILES['file']['name']=iconv('utf-8', 'GB2312//IGNORE', $_FILES['file']['name']); while (!feof($handle)) { $buffer = fgets($handle, 2000); $buffer=str_replace("\n", "", $buffer); $line_array=explode("\r\n", $buffer); $Context=htmlspecialchars(addslashes($line_array[0])); $Context=str_replace("'", ',', $Context); $Context=str_replace('"', ',', $Context); $Context=array_iconv($Context); $date=date('y-m-d h:i:s',time()); if($num<999){ $sql.="('{$name}','{$Context}','{$_FILES['file']['name']}','{$date}'),"; }else{ $sql.="('{$name}','{$Context}','{$_FILES['file']['name']}','{$date}')"; $a=sqlsrv_query($conn,$sql); // if( $a === false ) { // die( print_r( sqlsrv_errors(), true)); // } $num=0; $sql="INSERT INTO [dbo].[own_user_data1] ([Name],[Context],[md5],[data]) VALUES"; } $num++; $total++; } } fclose($handle); $sql1="INSERT INTO [dbo].[own_user_info] ([uid],[md5],[date],[name],[size],[gold]) VALUES ('{$_SESSION["id"]}','{$_FILES["file"]["name"]}','{$date}','{$name}','{$total}','1')"; sqlsrv_query($conn,$sql1); if( $a === false ) { die( print_r( sqlsrv_errors(), true)); } //处理没有插入到数据库的记录 if(substr($sql, strlen($sql)-1,1)==","){ $sql=substr($sql, 0,strlen($sql)-1); sqlsrv_query($conn,$sql); } $end = microtime_float(); $time = $end-$begin; echo "共导入{$total}条记录,耗时{$time}秒"; } } } else { echo "上传失败!"; } } }else{ header("Location: login.php"); } ?>
以上所述就是本文的全部内容了,希望大家能够喜欢。

使用數據庫存儲會話的主要優勢包括持久性、可擴展性和安全性。 1.持久性:即使服務器重啟,會話數據也能保持不變。 2.可擴展性:適用於分佈式系統,確保會話數據在多服務器間同步。 3.安全性:數據庫提供加密存儲,保護敏感信息。

在PHP中實現自定義會話處理可以通過實現SessionHandlerInterface接口來完成。具體步驟包括:1)創建實現SessionHandlerInterface的類,如CustomSessionHandler;2)重寫接口中的方法(如open,close,read,write,destroy,gc)來定義會話數據的生命週期和存儲方式;3)在PHP腳本中註冊自定義會話處理器並啟動會話。這樣可以將數據存儲在MySQL、Redis等介質中,提升性能、安全性和可擴展性。

SessionID是網絡應用程序中用來跟踪用戶會話狀態的機制。 1.它是一個隨機生成的字符串,用於在用戶與服務器之間的多次交互中保持用戶的身份信息。 2.服務器生成並通過cookie或URL參數發送給客戶端,幫助在用戶的多次請求中識別和關聯這些請求。 3.生成通常使用隨機算法保證唯一性和不可預測性。 4.在實際開發中,可以使用內存數據庫如Redis來存儲session數據,提升性能和安全性。

在無狀態環境如API中管理會話可以通過使用JWT或cookies來實現。 1.JWT適合無狀態和可擴展性,但大數據時體積大。 2.Cookies更傳統且易實現,但需謹慎配置以確保安全性。

要保護應用免受與會話相關的XSS攻擊,需採取以下措施:1.設置HttpOnly和Secure標誌保護會話cookie。 2.對所有用戶輸入進行輸出編碼。 3.實施內容安全策略(CSP)限制腳本來源。通過這些策略,可以有效防護會話相關的XSS攻擊,確保用戶數據安全。

优化PHP会话性能的方法包括:1.延迟会话启动,2.使用数据库存储会话,3.压缩会话数据,4.管理会话生命周期,5.实现会话共享。这些策略能显著提升应用在高并发环境下的效率。

theSession.gc_maxlifetimesettinginphpdeterminesthelifespanofsessiondata,setInSeconds.1)它'sconfiguredinphp.iniorviaini_set().2)abalanceisesneededeededeedeedeededto toavoidperformance andunununununexpectedLogOgouts.3)

在PHP中,可以使用session_name()函數配置會話名稱。具體步驟如下:1.使用session_name()函數設置會話名稱,例如session_name("my_session")。 2.在設置會話名稱後,調用session_start()啟動會話。配置會話名稱可以避免多應用間的會話數據衝突,並增強安全性,但需注意會話名稱的唯一性、安全性、長度和設置時機。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

Dreamweaver Mac版
視覺化網頁開發工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。