質問編集履歴
4
title
CHANGED
File without changes
|
body
CHANGED
@@ -58,7 +58,7 @@
|
|
58
58
|
|
59
59
|
65533ファイルまでは問題なく動作し、65534ファイルになるとglobで取得する値が65535個となり、0000065534.txtを2回取得しています。
|
60
60
|

|
61
|
-
その次は、
|
61
|
+
その次は、131069(≒65535×2)ファイルで、同様に重複する値を取得します。
|
62
62
|

|
63
63
|
|
64
64
|
これ以上は検証していませんが、多分、65535ファイル毎に重複する
|
3
title
CHANGED
File without changes
|
body
CHANGED
@@ -58,7 +58,7 @@
|
|
58
58
|
|
59
59
|
65533ファイルまでは問題なく動作し、65534ファイルになるとglobで取得する値が65535個となり、0000065534.txtを2回取得しています。
|
60
60
|

|
61
|
-
その次は、
|
61
|
+
その次は、131699(≒65535×2)ファイルで、同様に重複する値を取得します。
|
62
62
|

|
63
63
|
|
64
64
|
これ以上は検証していませんが、多分、65535ファイル毎に重複する
|
2
情報の追加です
title
CHANGED
File without changes
|
body
CHANGED
@@ -29,4 +29,41 @@
|
|
29
29
|
|
30
30
|
### 補足情報
|
31
31
|
OS:Windows10 Pro,Home
|
32
|
-
PHP version:PHP 7.2.26 (cli)、PHP7.4.9 (cli)
|
32
|
+
PHP version:PHP 7.2.26 (cli)、PHP7.4.9 (cli)
|
33
|
+
|
34
|
+
# 追記
|
35
|
+
|
36
|
+
みなさま、回答コメントありがとうございます。
|
37
|
+
とりあえず自分の環境でだけ起こっているのではない、ということが確認でき安心しました。
|
38
|
+
|
39
|
+
別OS,別バージョン,別ファイルシステムについては、試す環境と時間がないので申し訳ありませんが、追加の情報はありません。
|
40
|
+
|
41
|
+
何個目のファイルから、どのファイルが重複してカウントされるかを確認するために、ファイル名の数字の桁を10桁にそろえて確認しました。
|
42
|
+
```PHP
|
43
|
+
<?php
|
44
|
+
|
45
|
+
$max=65535*2;
|
46
|
+
|
47
|
+
$dir='test/';
|
48
|
+
for ($i=1;$i<=$max;$i++){
|
49
|
+
file_put_contents($dir.sprintf("%010d",$i).".txt",$i);
|
50
|
+
}
|
51
|
+
|
52
|
+
$files=glob($dir."*");
|
53
|
+
echo count($files);
|
54
|
+
|
55
|
+
?>
|
56
|
+
|
57
|
+
```
|
58
|
+
|
59
|
+
65533ファイルまでは問題なく動作し、65534ファイルになるとglobで取得する値が65535個となり、0000065534.txtを2回取得しています。
|
60
|
+

|
61
|
+
その次は、131701(≒65535×2)ファイルで、同様に重複する値を取得します。
|
62
|
+

|
63
|
+
|
64
|
+
これ以上は検証していませんが、多分、65535ファイル毎に重複する
|
65
|
+
ファイルが1つずつ増えていく感じでしょうか。
|
66
|
+
|
67
|
+
現時点で確認している不具合はファイルの一覧を取得した際、存在しているファイルを重複して取得するだけなので、m6uさんのarray_unique()で対処可能です。
|
68
|
+
|
69
|
+
ただ、重複するのではなく、例えば取りこぼす(ファイルが存在するのに取得しない)ような不具合が仮にあったとすれば、array_unique()では対処できないので、別の方法を考える必要がありそうです。
|
1
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
WindowsのPHPで、ディレクトリ一覧がうまく取得できない
|
1
|
+
WindowsのPHPで、ディレクトリ内ファイル一覧がうまく取得できない
|
body
CHANGED
File without changes
|