php递归获取目录内文件封装类分享

php递归获取目录内文件封装类分享,第1张

php递归获取目录文件封装类分昌亏中享,可耐山以递归子目录

代码如下:

代码如空拆下:

function

readFileFromDir($dir)

{

if

(!is_dir($dir))

{

return

false

}

//打开目录

$handle

=

opendir($dir)

while

(($file

=

readdir($handle))

!==

false)

{

//排除掉当前目录和上一个目录

if

($file

==

"."

||

$file

==

"..")

{

continue

}

$file

=

$dir

.

DIRECTORY_SEPARATOR

.

$file

//如果是文件就打印出来,否则递归调用

if

(is_file($file))

{

print

$file

.

'<br

/>'

}

elseif

(is_dir($file))

{

readFileFromDir($file)

}

}

}

调用方式:

代码如下:

$dir

=

'/home/www/test'

readFileFromDir($dir)

查看php手册的话,还有一个方法scandir也可以使用,不过这个方法会一次性获取单级目录下的所有文件,存放到数组里,如果目录里的文件比较多的话,会卡。

复制代码

代码如下:

//模板存放目录

$dir

=

$DOCUMENT_ROOT.'/backoffice/admin/oemcheck/'

$templateName

=

'1.xlsx'

$outputFileName

=

'模板.xlsx'

$txt='test'

//实例化Excel读取类

$PHPReader

=

new

PHPExcel_Reader_Excel2007()

if(!$PHPReader->canRead($dir.$templateName)){

$PHPReader

=

new

PHPExcel_Reader_Excel5()

if(!$PHPReader->canRead($dir.$templateName)){

echo

'无法识别的Excel文件!'

return

false

}

}

//读取纤伍Excel

$PHPExcel

=

$PHPReader->load($dir.$templateName)

//读取工作表1

$currentSheet

=

$PHPExcel->getSheet(0)

$currentSheet->setCellValue('B13',iconv('gbk','utf-8',$txt))//表头赋值磨键//

//实例化Excel写入类

$PHPWriter

=

new

PHPExcel_Writer_Excel2007($PHPExcel)

ob_start()

header("Content-Type:

application/force-download")

header("Content-Type:

application/octet-stream")

header("Content-Type:

application/download")

header('Content-Disposition:attachmentfilename="'

.$outputFileName.

'"')//输出模板名称

header("Content-Transfer-Encoding:

binary"瞎竖巧)

header("Last-Modified:".gmdate("D,

d

M

Y

H:i:s")."

GMT")

header('Pragma:

public')

header('Expires:

30')

header('Cache-Control:

public')

$PHPWriter->save('php://output')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12260000.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存