Maison  >  Article  >  développement back-end  >  PHP implémente le téléchargement de tableaux Excel et l'obtention de données

PHP implémente le téléchargement de tableaux Excel et l'obtention de données

墨辰丷
墨辰丷original
2018-05-23 14:34:306018parcourir

Cet article présente principalement les connaissances sur le téléchargement de tableaux Excel et l'obtention de données en php. A une très bonne valeur de référence. Jetons un coup d'œil avec l'éditeur ci-dessous

1 : Le premier est la partie html

<html>
<body>
<form action="upload_file.php" method="post" enctype="multipart/form-data">
<input type="file" name="file" id="file" /> 
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>

Deux : Il s'agit de recevoir et de traiter les fichiers téléchargés. Partie PHP

//文件存放的路径
$save_path = "/upload/"; 

//文件存放的文件夹
$save_files = $this->geturl();

这个是以年月日新建的文件夹,仅供参考。

//先检查当前文件夹是否存在,如不存在,创建文件夹
function geturl()
{
$year = date(&#39;Y&#39;);
$month= date(&#39;m&#39;);
$day= date(&#39;d&#39;);

$str = $year.$month.$day;
if(strtoupper(substr(PHP_OS,0,3))==&#39;WIN&#39;){
$path = getcwd() . "/upload/".$str;
}else{
$path = "/mnt/erp/".$str;
}
if(!file_exists($path))//判断文件夹是否存在
{
mkdir($path);
}

//return $path."/";
return $str."/";
}

//这个是上传文件到需要保存的位置,
if (!@move_uploaded_file($_FILES[$upload_name]["tmp_name"], $save_path.$file_path)) {
$error = "error|上传文件错误.";
exit(0);
}

Ce qui suit commence à obtenir les données Excel que vous avez téléchargées

//获取上传表格的数据
$file_name = $save_path.$file_path;                    //获取上传文件的地址名称
require_once APPPATH . &#39;views/IDC/config/PHPExcel.php&#39;;       
require_once APPPATH . &#39;views/IDC/config/PHPExcel/IOFactory.php&#39;;
require_once APPPATH . &#39;views/IDC/config/PHPExcel/Cell.php&#39;;

$objReader = PHPExcel_IOFactory::createReader(&#39;excel2007&#39;); //建立reader对象

$objPHPExcel = $objReader->load($file_name);
$sheet = $objPHPExcel->getSheet();
$highestRow = $sheet->getHighestDataRow(); // 取得总行数

$highestColumn_num = PHPExcel_Cell::columnIndexFromString($sheet->getHighestDataColumn()); //列数

//$columns = PHPExcel_Cell::getColumn($highestColumn_num);
$columns = array(&#39;A&#39;,&#39;B&#39;,&#39;C&#39;,&#39;D&#39;,&#39;E&#39;,&#39;F&#39;,&#39;G&#39;);

$arr_result = array();
$dealer_element = array();

for ($j = 2; $j <= $highestRow; $j++) {
for ($k = 0; $k < count($columns); $k++) {
//读取单元格
$value = $objPHPExcel->getActiveSheet()->getCell($columns[$k] . $j)->getValue();//这个就是获取每个单元格的值

$value = trim($value);
if (empty($value)) {
$value = NULL;
}
$dealer_element[$k] = $value;
//这里可以根据要求,做一些数据的验证
}

$arr_result[$j] = $dealer_element;
}
echo json_encode($arr_result);

Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.


Recommandations associées :

méthode simple php de copie de fichiers_php conseils

php méthode simple pour télécharger des images dans batches_php skills

requête de mots-clés pour les données php access_php skills

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn