php 忽略加载动态某个目录,php – 如何使用RecursiveIteratorIterator忽略目录?
我已经尝试了几种方法来在文件系统上使用RecursiveIteratorIterator忽略某些目录.
为了举例说明我想忽略以下目录:/ cache.
我的迭代器看起来像这样:
//$dirname is root
$directory = new RecursiveDirectoryIterator($dirname);
$mega = new RecursiveIteratorIterator($directory, RecursiveIteratorIterator::SELF_FIRST);
foreach ($mega as $fileinfo) {
echo $fileinfo;
}
我已经能够使用pathinfo忽略某些文件扩展名,例如这有效:
$filetypes = array("jpg", "png");
$filetype = pathinfo($fileinfo, PATHINFO_EXTENSION);
foreach ($mega as $fileinfo) {
if (!in_array(strtolower($filetype), $filetypes)) {
echo $fileinfo;
}
}
当我使用PATHINFO_DIRNAME(在数组中使用相应的目录路径)尝试它时,它不起作用,没有错误,它只是不忽略目录.
我也试过使用FilterIterator无济于事,现在我想也许我应该使用RegexIterator.
使用RecursiveIteratorIterator忽略目录的最简单,最有效的方法是什么?
实验没有用.
使用PATHINFO_DIRNAME
$dirignore = array("cache", "cache2");
$directory = new RecursiveDirectoryIterator($dirname);
$mega = new RecursiveIteratorIterator($directory, RecursiveIteratorIterator::SELF_FIRST);
$dirtype = pathinfo($fileinfo, PATHINFO_DIRNAME);
if (!in_array($dirtype), $dirignore)) {
echo $fileinfo; //no worky still echo directories
}
使用FilterIterator(不知道这是如何工作的)
class DirFilter extends FilterIterator
{
public function accept()
{
//return parent::current() != "..\cache\";
$file = $this->getInnerIterator()->current();
if ($file != "..\cache")
return $file->getFilename();
//also tried with same error as below
//return !preg_match('/\cache', $file->getFilename());
}
}
$directory= new RecursiveDirectoryIterator($dirname);
$directory = new DirFilter($directory);
$mega = new RecursiveIteratorIterator($directory, RecursiveIteratorIterator::SELF_FIRST);
// loop
Tis导致错误:需要RecursiveIterator或IteratorAggregate创建它的实例
php 忽略加载动态某个目录,php – 如何使用RecursiveIteratorIterator忽略目录?相关推荐
- php 忽略加载动态某个目录,限定某个目录禁止解析php 、限制user_agent 、php的配制文件、PHP的动态扩展模块...
找到路径,然后对其进行配制: 设置时区:date.timezone 把它改成:date.timezone =Asia/Shanghai 或:date.timezone =Asia/Chongqing ...
- 软件库Library之静态库\动态库和静态加载\动态加载
软件库Library之静态库\动态库和静态加载\动态加载 动态库之导入库 https://blog.csdn.net/wallaceli1981/article/details/5740718 * 动 ...
- Linux系统程序运行时加载动态库路径顺序
程序运行时加载动态库路径顺序(Linux) 在linux系统中,如果程序需要加载动态库,它会按照一定的顺序(优先级)去查找: 链接时路径(Link-time path)和运行时路径(Run-time ...
- php无法加载dll插件,php无法加载动态库怎么办
php无法加载动态库的解决办法:1.将PHP的集成包里的"libmySQL.dll"复制到system32目录下:2.将PHP的解压目录添加到PATH里:3.在Apache的配置文 ...
- sunPKCS11加载动态库(转)
sunPKCS11加载动态库(转) http://www.cnblogs.com/sunfb/archive/2013/03/01/2938491.html 这篇文章不介绍具体的编程方法,而是针对PK ...
- tableview动态修改和删除_Ubuntu加载动态库失败的解决方案
在ubuntu下代码编译通过的情况下,经常出现运行时加载动态库出错的情况.这些问题很琐碎,不具备任何技术含量,纯属耽误时间,这也是linux系统的通病,花里胡哨,故弄玄虚. 为了减少初学者在这种无意义 ...
- php7.2 加载pgsql驱动,PHP启动:无法加载动态库PGSQL - php
我正在尝试使用运行Symfony 3.x: Ubuntu 16.04 PHP 7.0 NGinx 我想与我创建的PGSQL数据库进行交互,但出现此错误: PHP警告:PHP启动:无法加载动态库 '/u ...
- linux直接运行程序加载动态库失败,扣丁学堂Linux培训详解程序运行时加载动态库失败解决方法...
今天扣丁学堂Linux培训老师给大家介绍一下关于Linux程序运行时加载动态库失败的解决方法,希望对同学们学习有所帮助,下面我们一起来看一下吧. Linux下不能加载动态库问题 当出现下边异常情况 . ...
- linux加载动态库问题
当我们在linux系统引用动态库时,经常会遇到一个问题,加入我们需要的动态库没有在系统的默认目录下,我们编译时使用-L指定了动态库的路径,编译时没有问题,但是执行调用该动态库的可执行文件时,却提示找不 ...
- 使用Poco实现插件方式加载动态库
动态库封装虚基类 //AbstractPlugin.h #ifndef __ABSTRACTPLUGIN_H__ #define __ABSTRACTPLUGIN_H__#include <st ...
最新文章
- torch tensor用法
- Struts2.x和Struts1.x的区别
- python类的调用关系_JAVA 查找类的所有引用关系(python实现)
- java enum.parse_java 枚举的简单使用(enum)
- 转-Apache kafka 工作原理介绍
- 用busybox制作并配置根文件系统
- 系统运维遇上了大救星,是什么让IT效率提高48%
- 在Linux下禁用IPv6的方法小结
- POJ 1472 Instant Complexity
- java nio 思维导图
- Centos7 制作系统iso镜像文件
- 【导数术】4.三次函数
- PVAJP计划:暨关于.Press全站使用VUE-AJAX-JSON-PYTHON的新规划
- HDU 5956 The Elder(斜率优化DP)
- Sublime Text3 配置LaTex编辑器
- VMware虚拟机屏幕大小(屏幕分辨率)调整
- Java方法创建及调用--------06
- 自如上线分期支付,租金贷发展受限后充分利用流量变现
- SpringCloud 微服务架构开源项目,适合接私活、毕业设计(附源码)
- 四因素解读金银跌势仍将继续