排序PHP迭代器 - php

有没有一种简单的方法可以在PHP中对迭代器进行排序(而不仅仅是将其全部拉入数组并进行排序)。

我有一个具体的例子是DirectoryIterator,但是对所有迭代器都有一个通用的解决方案会很好。

$dir = new DirectoryIterator('.');
foreach ($dir as $file)
    echo $file->getFilename();

我希望能够按各种标准(文件名,大小等)对它们进行排序

参考方案

没有办法做到这一点。迭代器应在列表中“迭代”。您必须对基础列表进行排序才能实现所需的行为。

顺便说一下,这里是对SPL的更完整参考:
http://www.php.net/~helly/php/ext/spl/

PHP getallheaders替代 - php

我正在尝试从服务器上的apache切换到nginx。唯一的问题是我在PHP脚本中使用的getallheaders()函数,该函数不适用于Nginx。我已经尝试过用户在getallheaders函数上的php站点上提供的注释,但这并不返回所有请求标头。请告诉我如何解决这个问题。我真的想切换到Nginx。 参考方案 您仍然可以使用它,但是您必须像这里一样重新定义…

php:是否有充分的理由引用所有数组键/索引? - php

我正在遍历别人的代码,他们总是避免转义其数组键。例如:$ row_rsCatalogsItems [名称]代替$ row_rsCatalogsItems ['名称']因此,我不断地对自己接触的所有事物进行微小的更改,以应对这些惰性。但是现在我想知道这样做是否有很多好处。我得到它会在默认为字符串之前检查常量(我在处理常量时会讨厌php中的行为,因为即使未定义,…

php fopen相对路径断开-神秘 - php

我知道“必须进行某些更改”,但是我的代码似乎整夜无故中断。我的服务器目录结构是这样的: / /脚本 /审计 /其他事情我在“脚本”文件夹中有一个脚本(假设它被称为“ /scripts/MyScript.php”),该脚本使用curl收集网页中的数据,并将其日期过的副本保存在“审核”文件夹中。要写入审核文件夹,我使用了 $ fh = fopen(“ ./ au…

检查文件是否存在且大于 - php

我需要检查与脚本位于同一文件夹中的文件是否存在并且大于100字节,如果是,则回显“是否存在”。 参考方案 我相信您正在尝试执行以下操作:$filename = 'test.txt'; if (file_exists($filename) && filesize($filename) > 100) { echo �…

PHP标头功能不起作用 - php

我曾经使用此功能从一个PHP页面重定向到另一个:header( 'Location: student.php?cnp='.$_REQUEST['name']) ; 在我的本地主机中,它确实可以工作,但是如果在Internet中对其进行测试,则不会重定向。我也尝试给出完整的路径(如http://.../student.p…