在学籍平台上导出的学籍照片,是以学籍号命名的。需要把这些照片以姓名重命名。

修改需要.png


获取学籍姓名和学籍号一一对应关系

新建一个文件index.html用来上传学籍表

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>获取文件新的名称列表</title>
</head>
<body>
<form action="./admin.php" method="post" enctype="multipart/form-data" >
    <label>
        <p>请确定你要上传的excel表格中,只有一列信息,如下入所示:</p>
    </label>
    <label>
        <input type="file" name="file" id="file" class="fileContainer">
    </label>
    <input type="submit" name="submit" value="提交">
</form>
</body>
</html>

图片.png

admin.php接收处理学籍的信息

<?php
require '../../vendor/autoload.php';
use PhpOfficePhpSpreadsheetSpreadsheet;
use PhpOfficePhpSpreadsheetWriterXlsx;

if(!@$_FILES['file']['tmp_name']) 
    die('<a herf="history.go(-1)" style="padding-left:30px;"><h1>可能没有上传excel文件!</h1></a>');

$spreadsheet= PhpOfficePhpSpreadsheetIOFactory::load($_FILES['file']['tmp_name']);
$data       = $spreadsheet->getActiveSheet()->toArray(null,true,true,true);

//去掉第一组数据(这一行一般是列名)
array_shift($data);

//“列”数
$excelFieldsNum  = sizeof($data[0]);

//行数
$excelLinesNum   = sizeof($data);

//限定excel中只有学籍号和姓名两列,可以优化
if($excelFieldsNum!=2){
    die('你提交的数据表含有的列数不是两列!');
}

//可以看看数据怎么样
//var_dump($data);

图片.png

接收到的数组如下

图片.png


今天先写到这里,明天继续更新(2021年6月8日 18:27)