【发布时间】:2019-07-18 10:11:08
【问题描述】:
我有一个包含多个文件夹的目录。
每个文件夹都有一个文件index.html。
index.html 的绝对路径是这样的:
C:\Users\Sachin_S2\Desktop\Script\ESXi_6.7_GSG_Pub=9=Validator (XXXX)=en-us\index.html
上面的路径可以解释为:
[Any_folder_location\Script\<Pub_title>=<Pub_version>=Validator (XXXX)=en-us\index.html]
这里的 pub 标题是:ESXi_6.7_GSG_Pub,这里的 Pub 版本是:9
现在,我想读取具有以下条件(或模式)的子文件夹中的所有文件:
1) 只读 index.html(跨所有子文件夹)
2) 在文件路径中搜索 Pub_Title 和 Pub_Version
3) 只读那些文件
举个例子。
下面是文件夹结构。
我当前的脚本:
<?php
$it = new RecursiveDirectoryIterator("C:\Users\Sachin_S2\Desktop\Script");
foreach(new RecursiveIteratorIterator($it) as $file) {
echo $file . "<br/> \n";
}
脚本输出:
基本上我想阅读所有搜索 pubtitle 和 pubversion 的 index.html。
案例:
带有 ESXi_6.7_GSG_Pub 和版本 9 的 index.html
带有 ESXi_6.7_GSG_Pub 和版本 8 的 index.html
带有 ESXi_6.5_IIG_Pub 和版本 13 的 index.html 等等
【问题讨论】:
-
explode("\\Script\\", $file)将为您提供路径ESXi_6.7_GSG_Pub=9=Validator。从那里,您可以再次使用explode()和_Pub=来检查 pub 版本。 -
Pub_Title是否总是具有相同的名称/格式?或者至少是一些常见的模式或ESXi...? -
No
Pub_Title和Pub_Version不断变化.. -
呃,这让事情变得更复杂了。位置总是一样的。就像它总是位于
Scripts一样吗? -
现在在我的本地,是的,它的
Scripts
标签: javascript php