【问题标题】:exclude file with Glob使用 Glob 排除文件
【发布时间】:2017-07-25 15:21:46
【问题描述】:

我正在使用 glob 来获取目录中的文件列表。

foreach(glob(dirname(__FILE__) . '/{data-,list-}*.{php}', GLOB_BRACE) as $filename){
       $filename = basename($filename);
       echo "<option value='" . $filename . "'>".$filename."</option>";
    }

假设我在目录中的文件列表如下

data-financebyyear.php
data-finance.php
data-hrbyyear.php

如何排除文件名中带有 byyear 的所有文件?

我试过这样的东西,但它不工作..所有文件仍然显示

foreach(glob(dirname(__FILE__) . '/{data-,list-}*.{php}', GLOB_BRACE) as $filename){
       $filename = basename($filename);
        if (strpos($filename, 'byyear') !== false) {
       echo "<option value='" . $filename . "'>".$filename."</option>";
       }
    }

【问题讨论】:

  • if (strpos($filename, 'byyear') === false)
  • !== 表示byyear 将出现在文件名中。
  • 非常感谢@u_mulder..知道了

标签: php


【解决方案1】:
foreach(glob(dirname(__FILE__) . '/{data-,list-}*.{php}', GLOB_BRACE) as $filename){
       $filename = basename($filename);
        if (strpos($filename, 'byyear') === false) {
       echo "<option value='" . $filename . "'>".$filename."</option>";
       }
    }

【讨论】:

    猜你喜欢
    • 2019-12-26
    • 2018-11-20
    • 2012-09-19
    • 1970-01-01
    • 1970-01-01
    • 2014-06-26
    • 1970-01-01
    • 2021-10-04
    • 2020-03-24
    相关资源
    最近更新 更多