gpt4 book ai didi

php - Linux 输出文件大小低于 100M 的文本文件问题

转载 作者:太空宇宙 更新时间:2023-11-04 03:57:43 25 4
gpt4 key购买 nike

下面是我的代码,用于将文件夹中的所有文件列出到文本文件中,但是我只想列出大小小于 110mb 的文件,是否可以实现,如何更改代码?

<?php

$folder_name = ".";
$d = opendir($folder_name);
while ($f = readdir($d)) {
if (is_file($folder_name."/".$f))
$writeLine .= $f . "\n";

}
closedir($d);


$textfile = "myFilesLIST.txt";
$f = fopen($textfile, "w");
fwrite($f, $writeLine);
fclose($f);


?>

我想要将 110MB 及以下的文件列表到此文件 myFilesLIST.txt

通常在屏幕上显示的是这个命令行

find . -size +110M

显示大小为 110 MB 及以上的文件。

但我想要实现的是找到小于小于 110 MB 的文件,并按每个文件逐行输出到 myFilesLIST.txt

最佳答案

您应该简单地使用长度参数。

而不是

fwrite($f, $writeLine);

你可以写

fwrite($f, $writeLine, 110 * 1024 * 1024 - 1);

这样文件应始终低于 110 MB(最大 109 MB 1024 kB 1024 B)

您可以在PHP manual - fwrite - length中阅读有关长度参数的更多信息。

编辑 - 在评论中解释后

你应该改变

if (is_file($folder_name."/".$f))

进入

if (is_file($folder_name."/".$f) && filesize($folder_name."/".$f) < 110 * 1024 * 1024))

关于php - Linux 输出文件大小低于 100M 的文本文件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24108650/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com