每行exec()的PHP调用函数

时间:2013-12-02 16:50:00

标签: php shell

我想获取特定目录中所有文件的文件路径。问题是该目录非常大(约400GB)。我试图进行递归调用来读取所有目录和子目录,它工作正常 - 但它很慢。 我知道我用exec打电话给“找...”。 使用shell时,我可以获得所有文件的数组,但是当进程完成时我只能访问该数组。 在搜索时有一些东西可以获得结果,这样我就可以将它存储在我的数据库中,其他程序可以访问它。我想为每个(或每个n)结果调用一个函数。 这样的事情是可能的,你会怎么做?

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

我是否正确阅读了您使用exec查找所有文件?

更好的方法是使用php自己,使用DirectoryIteratorRecursiveDirectorIterator之类的一些可用功能。

就我个人而言,我认为使用这些比使用exec运行命令更好。这样,当你可以在php中执行它时,你不会将处理传递给另一个进程。

我不确定能否在创建阵列时获得可用数据。您可以将数组的每个值存储到数据库中,这样,每次将值添加到数组时,都会更新数据库。然后,您可以在脚本仍在运行时使用数据库中的信息。