php scandir 产生额外的元素(2 个点)

2023-12-01

Hi,

我在名为 content 的目录中有以下文件:index.php、page1.php、page2.php 和 page3.php。

然后我有这个代码:

 $column = scandir("content");
 foreach ($column as $value) {   
  $stvalue = str_replace(".php", "", $value);    
  echo "<div>$stvalue</div>";
}

尽管如此,这就是我得到的:

<div>.</div>
<div>..</div>
<div>index</div>
<div>page1</div>
<div>page2</div>
<div>page3</div>

前 2 个元素是怎么回事?我没有这样命名的文件,所以我不明白。

谢谢。


。 - 是引用当前目录的特殊目录。

.. - 也是一个特殊目录,它引用父目录。

要删除特殊目录,我可以想到一些选项:

1.

foreach(glob("*.php") as $filename) {
    echo "<div>$filename</div>";
}

2.

$files = array_diff(scandir("content"), array('..', '.'));
foreach($files as $file) { ... }

3.

foreach ($files as $file) {    
    if($file != '.' and $file != '..') { ... } 
}

以上都是替代方案。你不需要使用scandir()如果你使用glob()反之亦然。glob()- 期望有一个模式。也可以为其提供如下路径:
glob("[path]/*.php")- 这将列出位于路径中的所有 php 文件。glob()文档可以在这里找到PHP-glob()

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

php scandir 产生额外的元素(2 个点) 的相关文章

  • 如果不使用 CoreAnimation,如何避免“CoreAnimation 警告已删除未提交 CATransaction 的线程”

    就在应用程序委托中 applicationDidBecomeActive 我创建并启动一个线程 该线程等待异步下载 然后保存数据 void applicationDidBecomeActive UIApplication applicati
  • Angular 6 和 Ag-grid

    我正在使用 Angular 6 和 Ag Grid 进行测试 我做了一个例子并绘制了它 我的意思是CSS等等 但是通过执行下面的示例并从我的后端输入真实数据不会绘制表格并始终 加载 包 json dependencies ag grid a
  • C 写入位置 scanf_s 访问冲突

    这是我的代码 main char firstName 30 lastName 30 printf What is your name scanf s s s firstName lastName printf Your name is s
  • 自定义静态路由不起作用

    您好 我正在尝试在 React 中建立我的项目 我当前的项目结构是 public w dist bundle js index html server server js src app js webpack config js packa
  • Rails AREL .where 语句

    我有一个 AREL 查询 group members where member id 4 正如预期的那样 此查询返回 ID 不等于 4 的所有成员 如何构建相同类型的查询来省略多个 ID 例如 group members where mem
  • 退出 Protractor e2e 测试失败?

    有谁知道是否有可以添加到量角器的配置e2e conf js那么一旦失败就退出测试吗 默认行为是 如果测试早期失败 您需要等到测试完成才能修复错误 从工作流程的角度来看 这是非常令人沮丧的 这个问题有什么解决办法吗 Thanks 没有这个选项

随机推荐

  • 如何在 Ubuntu 中启用 CONFIG_RT_GROUP_SCHED 以使其成为 RT

    我需要在 Ubuntu RT Linux 上运行实时应用程序 并且正在阅读有关使 Linux 充当 RT 系统的方法 我学到了两种方法 preemptive rt 内核修补 使能CONFIG RT GROUP SCHED内核中的标志 我已经
  • 如何判断 Android Studio 何时运行 gradle?

    我需要在我的 gradle 构建文件中构建一些 hack 以便 Android Studio 能够理解一些事情 当我从命令行目录运行构建时 我不需要这些技巧 有没有办法检测 Android Studio 中何时运行构建 也许通过环境变量等
  • 如何在Scrapy中将显示从无显示变为块显示?

    我正在尝试从下拉菜单中抓取数据 这是link 在检查获取 xpath 的过程中 我意识到没有显示 那么有什么方法可以从显示设置为无的下拉菜单 适合以下汽车 中抓取数据 如果是 否 如何 为什么 您想要抓取的数据通过 Ajax 调用填充 因此
  • PHP 数组作为存储过程的输入

    这就是我现在正在做的 在 PHP 中 foreach array as value query select abc from tblname where colname value fire query 然后我创建这些值的数组并相应地显示
  • 使用 ShinyBS 实现闪亮的反应式工具提示BS

    我尝试使用shinyBS打包到我的简单应用程序中 我想要做的是创建取决于每个单选按钮的反应式工具提示文本 为了澄清我的问题我写了一个简单的代码HTML 和 JavaScript 我也找到了一个solution这似乎解决了我的问题 但实际上我
  • 如何从与 C# 中的 XPath 查询匹配的 XML 文件中获取值

    我想知道是否有一种使用 C 的方法可以返回 XML 文件中与给定 XPath 查询匹配的所有内部值 假设我们有以下名为 exampleWithFruits xml 的 Xml 文件
  • 需要固定长度正则表达式吗?

    我有这个使用前向和后向预测的正则表达式 import re re compile lt 我正在尝试将其从 C 移植到 Python 但不断收到错误 look behind requires fixed width pattern 是否可以用
  • Az / AzureRM / 旧版 Azure Powershell 冲突

    我正在尝试从 AzureRM 升级到适用于 powershell 的新 Az 模块 我们仍然有多种使用 旧版 服务管理 API 资源的情况 例如经典的 Azure 云服务 并且这些 据我所知 仍然需要使用旧的 Azure powershel
  • 通过在循环外声明对象是否有任何性能提升

    我有一段代码 在循环内声明一个对象 例如 foreach ClassA clA new ClassA clA item1 1 clA item2 2 ClassB Add clA 如果我将代码修改如下 是否会有任何性能提升 ClassA c
  • 一旦超出范围,C 会重用本地块 var 的内存吗?

    我相信这个问题在技术上不同于局部变量的内存可以在其作用域之外访问吗 因为它是 C 而不是 C 我知道在 C 中你可以将局部变量放在一个块中 它的作用域将限于该块 include
  • 我们真的可以在所有情况下都避免 goto 吗?

    Fortran 90 及更高版本强烈建议不要使用goto陈述 然而 我仍然觉得被迫在以下两种情况下使用它 Case 1 指示重新输入输入值 例如 program reenter 10 print Enter a positive numbe
  • Node Express 不处理并行请求

    我刚刚创建了一个 NodeJS Express 服务器来了解 NodeJS 的工作原理 我了解到 NodeJS 可以同时处理大量 API 请求 因为 CPU 密集型任务不是由同一线程完成的 然而 我的服务器甚至无法同时处理 2 个请求 即使
  • 回收 IIS7 应用程序池是否会终止任何当前正在执行的请求?

    回收 IIS7 应用程序池是否会终止任何当前正在执行的请求 或者它是否等待所有请求完成 如排水停止 我不希望回收规则导致我的 WCF 站点出现间歇性错误 Thanks No 默认情况下 WWW 服务 建立重叠回收 在 哪个工作进程是 终止后
  • Keras:计算模型输出与输入返回的导数[无]

    我需要帮助计算 Keras 中模型输出与输入的导数 我想在损失函数中添加正则化函数 正则化器包含分类器函数的导数 所以我尝试对模型输出求导 该模型是具有一个隐藏层的 MLP 数据集是 MNIST 当我编译模型并求导数时 我得到的结果是 No
  • 批量复制所有文件而不覆盖

    set dSource C Games Steam steamapps set dTarget E Demos set fType dem xcopy i dSource fType dTarget 这就是我目前必须复制所有文件的方法 但是
  • 如何使用 C# 获取 GAC 的位置?

    我怎样才能得到的位置GAC目录使用C Windows 注册表中是否存在条目 UPDATE 我需要该位置 因为我想枚举和分析位于 GAC 中的程序集 Bye 如果您想枚举 GAC 中的内容 例如编写系统管理工具 您最好的选择是使用 fusio
  • 名称由单下划线分割的 ASP.NET Core 选项模式

    我正在尝试使用 ASP NET Core 选项模式加载我的应用程序设置 The appsettings json包含 TEst hello TEST ABC 2 POCO类 public class AppSetting public st
  • li:将鼠标悬停在访问过的颜色上

    在我的 li 元素中 我有一个链接和一个跨度中包含的一些文本 当我将鼠标悬停在 li 上时 我想更改文本和链接的颜色 这效果很好 但是我正在努力设置访问的颜色并保留此功能 这是我的代码 HTML ul class tour 1 li spa
  • 为什么不能在 for 循环内操作“i”[重复]

    这个问题在这里已经有答案了 为什么 for i in range 10 i 1 print i return 1 2 3 4 5 6 7 8 9 10 代替 2 4 6 8 10 如果需要更多细节 这里将提供一些细节 for i in ra
  • php scandir 产生额外的元素(2 个点)

    Hi 我在名为 content 的目录中有以下文件 index php page1 php page2 php 和 page3 php 然后我有这个代码 column scandir content foreach column as va