> 백엔드 개발 > PHP 튜토리얼 > 두 개의 제외 파일과 그림 폴더를 읽고 그림 파일을 다른 폴더로 이동하고 제외 콘텐츠를 데이터베이스에 업로드합니다.

두 개의 제외 파일과 그림 폴더를 읽고 그림 파일을 다른 폴더로 이동하고 제외 콘텐츠를 데이터베이스에 업로드합니다.

WBOY
풀어 주다: 2016-07-28 08:27:05
원래의
56277명이 탐색했습니다.

$name=$_POST;
include ('../PHPExcel.php');
include '../PHPExcel/Writer/Excel2007.php';
require ' ../../../data/config.php';
define('FILE_URL','../../../attachment/');//저장된 경로
define( " FILE1","../../../FTP_FILE/file1.xlsx");//파일 1 제품 상세 정보
define("FILE2","../../../FTP_FILE/ file1 .xlsx");//파일 2 제품 소스 주소
define("FILE_IMG","../../../FTP_FILE/contentPic/..");//contentPic 사진 폴더
// $number=$_POST['number'];//인원 가져오기
// $setime=$_POST['setime'];//시간 가져오기
// print_r($_FILES); // 파일 경로 등을 가져옵니다.
// move_uploaded_file($_FILES['file_1']['tmp_name'], 'FILE1.xlsx');
//--------- ---- --------------------------------- ---- ---------- 사용자가 FILE1 및 FILE2 파일을 업로드했는지 확인
if(file_exists("../.. /../FTP_FILE /FILE1.xlsx")&&file_exists("../../../FTP_FILE/FILE2.xlsx")){
}else{
echo "죄송합니다 파일이 없습니다. 파일을 업로드해주세요.";
종료;
}
//------------------------------- ----------- -------------------------- ----------- FILE1 파일 획득
//Loop
$filePath = "../../../FTP_FILE/FILE1.xlsx"
//리더 생성 객체
$PHPReader = new PHPExcel_Reader_Excel2007() ;
if(!$PHPReader->canRead($filePath)){
$PHPReader = new PHPExcel_Reader_Excel5()
if(!$PHPReader- >canRead($filePath)){
'no Excel';
return ;
}
}
//이때 Excel 개체를 만들 수 있습니다. Excel 객체를 사용하거나 이를 통해 파일 쓰기
$PHPExcel = $PHPReader->load($filePath)
/**Excel 파일의 첫 번째 워크시트 읽기*/
$currentSheet = $PHPExcel->getSheet(0 );
/**가장 큰 열 번호 얻기 */
$allColumn = $currentSheet->getHighestColumn()
/**총 행 수를 가져옵니다.*/
$allRow = $currentSheet-> getHighestRow();
//루프 읽기 각 셀의 내용을 가져옵니다.행은 1부터 시작하고 열은 A
$cd_array=array();
$arr =array()
$temp=array(
'A'=>'name에서 시작합니다. ' ,
'B'=>'클래스',
'C'=>'C',
'D'=>'D',
'E' => 'E',
'F' =>'F',
'G'=>'G',
'H'=>'macth',
'I'= >'나',
'J'=>'숫자',
'K'=>'K',
'L'=>'L',
'M ' =>'M',
'N'=>'N',
'O'=>'O',
'P'=>'P',
' Q'=>'Q',
'R'=>'R',
'S'=>'S',
'T'=>'T',
'U'=>'설명',
'V'=>'V',
'W'=>'W',
'X'=>'X' ,
'Y'=>'Y',
); //생성된 엑셀 테이블에 해당하는 배열 필드 이름을 지정합니다
for($rowIndex=4;$rowIndex<=$allRow;$ rowIndex++){
for($colIndex='A';$colIndex<='Y';$colIndex++){
$addr = $colIndex.$rowIndex
$cell = $currentSheet-> getCell($ addr)->getValue()
if($cell instanceof PHPExcel_RichText) //서식있는 텍스트 변환 문자열
$cell = $cell->__toString()
$arr[$ temp[ $colIndex]]=$cell;
}
$cd_array[] = $arr;
unset($arr);
}
//------- -- ------------------------------------------------ -- ---------------------------FILE2 파일 획득
$filePath = " ../../../FTP_FILE/FILE2.xlsx";
//리더 객체 생성
$PHPReader = new PHPExcel_Reader_Excel2007()
if(!$PHPReader->canRead( $filePath )){  
    $PHPReader = new PHPExcel_Reader_Excel5();  
    if(!$PHPReader->canRead($filePath)){  
         echo 'Excel 없음';  >    }
}
//엑셀 객체를 생성합니다. 이때 엑셀 객체를 통해 파일을 읽거나 쓸 수 있습니다.
$PHPExcel = $PHPReader->load($filePath) ;
/**Excel 파일의 첫 번째 워크시트 읽기*/
$currentSheet = $PHPExcel->getSheet(0)
/**가장 큰 열 번호 얻기*/
$allColumn = $currentSheet-> getHighestColumn( );
/**총 행 수를 가져옵니다.*/
$allRow = $currentSheet->getHighestRow();
//각 셀의 내용을 읽는 루프입니다.행은 1부터 시작하고 열은 A에서 시작합니다.
//리더 객체 생성
$url_array=array();
$arr =array();
for($rowIndex=2;$ rowIndex< ;=$allRow;$rowIndex++){
for($colIndex='A';$colIndex<='B';$colIndex++){
$addr = $colIndex.$rowIndex
$ cell = $currentSheet->getCell($addr)->getValue();
if($cell instanceof PHPExcel_RichText) //서식 있는 텍스트 변환 문자열
$cell = $cell->__toString();
$arr[] = $cell;
}
$url_array[] = $arr;
unset($arr);
}
foreach ($cd_array as $key = > $value) {
                                                           
$cd_array[$key]['url'] = $value1[1];
                                      y()
foreach ($cd_array as $key => $value) {
foreach ($value as $key1 => $value1) {
if($key1=='number'||$key1 == 'class' | key1] = $value1;
                                                                                                                               ------------------------------------------------ -- ----------모든 이미지 경로를 배열
$j=로 반복합니다. 0; //변수
$arr = array(); //배열
$cd_img=array();
foreach($cd_info1 as $key=>$value){

foreach ($value as $key1=>$value1){
                                                                                            Preg_match_all("/]*)s*src=('|")([^'"]+) ('|")/", $text,$matches);
                                                                                                                        0]);
                                                                                {
                                                                                                                                                                ~ >       }
  $cd_img[]=$arr;
}
//---------------함수 캡슐화-- ---- ------1---------
hover_file($file_url 함수) ,$file_name){
//폴더 결정 및 생성
$y=date('Y',time());//연도
$m=date('m' ,time() );
if(!is_dir('../../../attachment/images/'.$y.$m)){
mkdir('../../ ../attachment /images/'.$y.$m,0777);//연도+월에 생성된 폴더의 권한이 가장 높습니다
}
//이미지 경로를 얻어서 이동
$text=$file_url;//이미지 경로 1
// $file_url;
// $file_url;
$text1=$file_name ;/ /사진 경로 2
$text1;
rename(iconv("UTF-8","GBK",$text),iconv("UTF-8","GBK",$text1));
}
//---------------------------- ---- --------------------------------- ---- ---데이터베이스에 모든 데이터 추가
                                                                                                                                                                     $ 가치) {
~ >      res-- s img_list1=null; ./attachment/images/".date(' Y',time()).date('m',time())."/".basename($value3)."'/>

";
                                      >//--- -------------메인 이미지 추가-- ------ ---------------------
                                                                                                                                            $arr_1=explode('/',$value1);
$number1=$arr_1[count($arr_1)-1];
                                $number2=$arr_1[count($arr_1)-2] /../FTP_FILE /ContentPic/".$number2.' /' $number1 ;// 사진의 실제 경로를 가져옵니다
// 사진의 높이가 정상적인지 확인
// $ aa = getimagesize ($ number)
// / $ width = $ aa ['0'];
$ As = Getimagesize (iconv ("UTF-8", "GBK", $ Number);
$ height = $ as ["1"] ;/// 이미지 높이 가져오기
                                                                     $imgs=basename($number);
            >       $lotimg=lotimg+1;
                                                                      
                    $a = "에서 * 선택 " . 테이블명('tg_goods') . "where gsn=".$value['class']."";
                    $set = pdo_fetch("select * from " . tablename('tg_goods') . "where gname='".$value['name ']."'");
                    if($set['gname']!=$value['name']){
                       $data = array(
                           'gname' =>$값 ['name'],
                            'fk_typeid' =>$tuan_class,
                            'category_parentid'=>$tuan_class,
                           'gsn'=>$value['class'],
'gprice'=>$value['maprric'],
                            'uniacid'=>'1',
                          'isshow'=>'1',
                           'createtime'=>시간 (),
                            'gprice'=>$value['macth'],//团购价格
                            'oprice'=>$value['macth']*0.2+$ 값['맥트'] ,//单独购买价格
                            'mprice'=>$value['macth']*0.5+$value['macth'],//原价
                           'gimg'=>'이미지/'. date('Y',time()).date('m',time()).'/'.$imgs,   //主图
                            // 'groupnum'=> rand(2, 24),//拼团人数
                             'groupnum'=>$tuan_number,//拼团人数
                            'salenum'=& gt;rand(7, 999),//판매량
                          // 'endtime'=>rand(8, 24),//拼团时间限system
                            'endtime'=>$tuan_data,
                           'gdetaile'=>$img_list1,
                          'gnum'=>$value['number'],//库存
                            // 'gdesc'=>$img_list1,//详情页滚动图文
                            );
                            pdo_insert('tg_goods ', $data);
                            $set = pdo_fetch("select * from " . tablename('tg_goods') . "where gname='".$value['name']."'");
정의                 echo  "죄송합니다,文件已存재입니다.";
                           
                          }
                          $k_n=$k_n+1;
                    
               }
                                                                                     ----------------------------------------------- 사진 저장 데이터베이스
var_dump($uid[0]);
if($uid[0]!=''){
            foreach ($cd_img as $key => $value) {
> | 폴더 이름
                                                                                                  >                                                                                  에코 $ 데이터;
                       ~ tg_goods_atlas', $data);                                                      .$img_url.'--'.'
';
             ~ ~ ~ 여기서 fk_typeid=".$value['class']."");
                                                                 ------------------------------------------------ --$cd_img를 얻음 그림 배열 경로-그림 이동을 위한 루프 실행---------------
foreach($cd_img $key => $ value) {
foreach($value as $key1 =>$value1){
$arr_1=explode('/',$value1);
// print_r( $arr_1);
$number1=$arr_1[count($arr_1)-1];
$number2=$arr_1[count($arr_1)-2];

$url_name=$ number2.'/'.$ number1;//상대 폴더 경로/xxxxxx/xxx.jpg
$img_name=basename($value1);//사진 파일 이름
$hostdir=dirname("../. ./../FTP_FILE /contentPic/..");//사진 경로 설정
//스캔한 폴더의 파일과 폴더 이름을 가져와 $filesnames 배열에 저장합니다
$filesnames = scandir ($hostdir); // 파일 이름 디렉터리
$y=date('Y',time());//연도
$m=date('m',time());
$text= $hostdir.' /'.$url_name; //이미지 경로 1
$text1="../../../attachment/images/".$y.$m."/". $img_name."";/ /사진 경로 2
hover_file($text,$text1);//파일 이동 기능 실행
}
$arr_1='';
}
//------ ----------------------------- -------- -----모든 파일 삭제
function deldir($dir) {
$dh=opendir($dir);
while ($file=readdir($dh) )) {
if( $file!="." && $file!="..") {
$fullpath=$dir."/".$file;
if(!is_dir( $fullpath)) {
연결 해제($fullpath);
} else {
        deldir($fullpath);
closeir($dh);
//현재 폴더 삭제:
if(rmdir($dir)) {
return true;
} else {
return false;
}
}
deldir('../../../FTP_FILE/contentPic');//폴더 디렉터리 삭제
$file1 = "../../../ FTP_FILE/FILE1.xlsx";
$file2 = "../../../FTP_FILE/FILE2.xlsx";
링크 해제($file1);//파일 1 삭제
링크 해제($ file2);//파일 2 삭제
echo "<script>alert('제품을 성공적으로 가져왔습니다. 이동하려면 확인을 클릭하세요.'); window.location.href=document.referrer;</script>";
?>

위에서는 두 개의 제외 파일과 그림 폴더를 읽는 방법, 그림 파일을 다른 폴더로 이동하는 방법, 내용을 포함한 제외 내용을 데이터베이스에 업로드하는 방법을 소개했습니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되길 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿