3v4l.org

run code in 300+ PHP versions simultaneously
<?php $myDirectory = opendir("."); // get each entry while($entryName = readdir($myDirectory)) { $dirArray[] = $entryName; } // close directory closedir($myDirectory); // count elements in array $indexCount = count($dirArray); Print ("$indexCount files<br>\n"); // sort 'em sort($dirArray); // print 'em print("<TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks>\n"); print("<TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR>\n"); // loop through the array of files and print them all for($index=0; $index < $indexCount; $index++) { if (substr("$dirArray[$index]", 0, 1) != "."){ // don't list hidden files print("<TR><TD><a href=\"$dirArray[$index]\">$dirArray[$index]</a></td>"); print("<td>"); print(filetype($dirArray[$index])); print("</td>"); print("<td>"); print(filesize($dirArray[$index])); print("</td>"); print("</TR>\n"); } } print("</TABLE>\n"); ?>
Output for 8.3.0 - 8.3.4
Warning: opendir(): open_basedir restriction in effect. File(.) is not within the allowed path(s): (/tmp:/in:/etc) in /in/XESpk on line 2 Warning: opendir(.): Failed to open directory: Operation not permitted in /in/XESpk on line 2 Fatal error: Uncaught TypeError: readdir(): Argument #1 ($dir_handle) must be of type resource or null, false given in /in/XESpk:5 Stack trace: #0 /in/XESpk(5): readdir(false) #1 {main} thrown in /in/XESpk on line 5
Process exited with code 255.
Output for 8.0.14 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17
Warning: opendir(): open_basedir restriction in effect. File(.) is not within the allowed path(s): (/tmp:/in:/etc) in /in/XESpk on line 2 Warning: opendir(.): Failed to open directory: Operation not permitted in /in/XESpk on line 2 Fatal error: Uncaught TypeError: readdir(): Argument #1 ($dir_handle) must be of type resource or null, bool given in /in/XESpk:5 Stack trace: #0 /in/XESpk(5): readdir(false) #1 {main} thrown in /in/XESpk on line 5
Process exited with code 255.
Output for 8.0.13
21 files<br> <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> <TR><TD><a href="bin">bin</a></td><td>link</td><td>10014</td></TR> <TR><TD><a href="boot">boot</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="dev">dev</a></td><td>dir</td><td>400</td></TR> <TR><TD><a href="etc">etc</a></td><td>dir</td><td>364</td></TR> <TR><TD><a href="home">home</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="in">in</a></td><td>dir</td><td>60</td></TR> <TR><TD><a href="lib">lib</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="lib64">lib64</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="mnt">mnt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="opt">opt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="proc">proc</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="root">root</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="run">run</a></td><td>dir</td><td>160</td></TR> <TR><TD><a href="sbin">sbin</a></td><td>link</td><td>10014</td></TR> <TR><TD><a href="srv">srv</a></td><td>dir</td><td>14</td></TR> <TR><TD><a href="sys">sys</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="tmp">tmp</a></td><td>dir</td><td>2056940</td></TR> <TR><TD><a href="usr">usr</a></td><td>dir</td><td>70</td></TR> <TR><TD><a href="var">var</a></td><td>dir</td><td>96</td></TR> </TABLE>
Output for 5.2.3 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.10, 7.4.11 - 7.4.25, 8.0.0 - 8.0.12
21 files<br> <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> <TR><TD><a href="bin">bin</a></td><td>link</td><td>9954</td></TR> <TR><TD><a href="boot">boot</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="dev">dev</a></td><td>dir</td><td>400</td></TR> <TR><TD><a href="etc">etc</a></td><td>dir</td><td>364</td></TR> <TR><TD><a href="home">home</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="in">in</a></td><td>dir</td><td>10</td></TR> <TR><TD><a href="lib">lib</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="lib64">lib64</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="mnt">mnt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="opt">opt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="proc">proc</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="root">root</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="run">run</a></td><td>dir</td><td>100</td></TR> <TR><TD><a href="sbin">sbin</a></td><td>link</td><td>9954</td></TR> <TR><TD><a href="srv">srv</a></td><td>dir</td><td>14</td></TR> <TR><TD><a href="sys">sys</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="tmp">tmp</a></td><td>dir</td><td>49480</td></TR> <TR><TD><a href="usr">usr</a></td><td>dir</td><td>70</td></TR> <TR><TD><a href="var">var</a></td><td>dir</td><td>96</td></TR> </TABLE>
Output for 7.4.33
21 files<br> <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> <TR><TD><a href="bin">bin</a></td><td>link</td><td>10686</td></TR> <TR><TD><a href="boot">boot</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="dev">dev</a></td><td>dir</td><td>400</td></TR> <TR><TD><a href="etc">etc</a></td><td>dir</td><td>408</td></TR> <TR><TD><a href="home">home</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="in">in</a></td><td>dir</td><td>60</td></TR> <TR><TD><a href="lib">lib</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="lib64">lib64</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="mnt">mnt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="opt">opt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="proc">proc</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="root">root</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="run">run</a></td><td>dir</td><td>80</td></TR> <TR><TD><a href="sbin">sbin</a></td><td>link</td><td>10686</td></TR> <TR><TD><a href="srv">srv</a></td><td>dir</td><td>14</td></TR> <TR><TD><a href="sys">sys</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="tmp">tmp</a></td><td>dir</td><td>440</td></TR> <TR><TD><a href="usr">usr</a></td><td>dir</td><td>70</td></TR> <TR><TD><a href="var">var</a></td><td>dir</td><td>96</td></TR> </TABLE>
Output for 7.4.27 - 7.4.32
Warning: opendir(): open_basedir restriction in effect. File(.) is not within the allowed path(s): (/tmp:/in:/etc) in /in/XESpk on line 2 Warning: opendir(.): failed to open dir: Operation not permitted in /in/XESpk on line 2 Warning: readdir() expects parameter 1 to be resource, bool given in /in/XESpk on line 5 Warning: closedir() expects parameter 1 to be resource, bool given in /in/XESpk on line 10 Notice: Undefined variable: dirArray in /in/XESpk on line 13 Warning: count(): Parameter must be an array or an object that implements Countable in /in/XESpk on line 13 0 files<br> Warning: sort() expects parameter 1 to be array, null given in /in/XESpk on line 17 <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> </TABLE>
Output for 7.4.26
21 files<br> <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> <TR><TD><a href="bin">bin</a></td><td>link</td><td>10014</td></TR> <TR><TD><a href="boot">boot</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="dev">dev</a></td><td>dir</td><td>400</td></TR> <TR><TD><a href="etc">etc</a></td><td>dir</td><td>364</td></TR> <TR><TD><a href="home">home</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="in">in</a></td><td>dir</td><td>60</td></TR> <TR><TD><a href="lib">lib</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="lib64">lib64</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="mnt">mnt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="opt">opt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="proc">proc</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="root">root</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="run">run</a></td><td>dir</td><td>160</td></TR> <TR><TD><a href="sbin">sbin</a></td><td>link</td><td>10014</td></TR> <TR><TD><a href="srv">srv</a></td><td>dir</td><td>14</td></TR> <TR><TD><a href="sys">sys</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="tmp">tmp</a></td><td>dir</td><td>2104200</td></TR> <TR><TD><a href="usr">usr</a></td><td>dir</td><td>70</td></TR> <TR><TD><a href="var">var</a></td><td>dir</td><td>96</td></TR> </TABLE>
Output for 7.2.11 - 7.2.34, 7.3.0 - 7.3.32, 7.4.0 - 7.4.10
21 files<br> <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> <TR><TD><a href="bin">bin</a></td><td>link</td><td>9954</td></TR> <TR><TD><a href="boot">boot</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="dev">dev</a></td><td>dir</td><td>400</td></TR> <TR><TD><a href="etc">etc</a></td><td>dir</td><td>364</td></TR> <TR><TD><a href="home">home</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="in">in</a></td><td>dir</td><td>20</td></TR> <TR><TD><a href="lib">lib</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="lib64">lib64</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="mnt">mnt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="opt">opt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="proc">proc</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="root">root</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="run">run</a></td><td>dir</td><td>100</td></TR> <TR><TD><a href="sbin">sbin</a></td><td>link</td><td>9954</td></TR> <TR><TD><a href="srv">srv</a></td><td>dir</td><td>14</td></TR> <TR><TD><a href="sys">sys</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="tmp">tmp</a></td><td>dir</td><td>49480</td></TR> <TR><TD><a href="usr">usr</a></td><td>dir</td><td>70</td></TR> <TR><TD><a href="var">var</a></td><td>dir</td><td>96</td></TR> </TABLE>
Output for 7.3.33
21 files<br> <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> <TR><TD><a href="bin">bin</a></td><td>link</td><td>9994</td></TR> <TR><TD><a href="boot">boot</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="dev">dev</a></td><td>dir</td><td>400</td></TR> <TR><TD><a href="etc">etc</a></td><td>dir</td><td>364</td></TR> <TR><TD><a href="home">home</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="in">in</a></td><td>dir</td><td>60</td></TR> <TR><TD><a href="lib">lib</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="lib64">lib64</a></td><td>link</td><td>1294</td></TR> <TR><TD><a href="mnt">mnt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="opt">opt</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="proc">proc</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="root">root</a></td><td>dir</td><td>40</td></TR> <TR><TD><a href="run">run</a></td><td>dir</td><td>80</td></TR> <TR><TD><a href="sbin">sbin</a></td><td>link</td><td>9994</td></TR> <TR><TD><a href="srv">srv</a></td><td>dir</td><td>14</td></TR> <TR><TD><a href="sys">sys</a></td><td>dir</td><td>0</td></TR> <TR><TD><a href="tmp">tmp</a></td><td>dir</td><td>240</td></TR> <TR><TD><a href="usr">usr</a></td><td>dir</td><td>70</td></TR> <TR><TD><a href="var">var</a></td><td>dir</td><td>96</td></TR> </TABLE>
Output for 4.4.3 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.2
<br /> <b>Warning</b>: opendir(.) [<a href='function.opendir'>function.opendir</a>]: failed to open dir: Permission denied in <b>/in/XESpk</b> on line <b>2</b><br /> <br /> <b>Warning</b>: readdir(): supplied argument is not a valid Directory resource in <b>/in/XESpk</b> on line <b>5</b><br /> <br /> <b>Warning</b>: closedir(): supplied argument is not a valid Directory resource in <b>/in/XESpk</b> on line <b>10</b><br /> 0 files<br> <br /> <b>Warning</b>: sort() expects parameter 1 to be array, null given in <b>/in/XESpk</b> on line <b>17</b><br /> <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> </TABLE>
Output for 4.3.2 - 4.3.11, 4.4.0 - 4.4.2
<br /> <b>Warning</b>: opendir(.): failed to open dir: Permission denied in <b>/in/XESpk</b> on line <b>2</b><br /> <br /> <b>Warning</b>: readdir(): supplied argument is not a valid Directory resource in <b>/in/XESpk</b> on line <b>5</b><br /> <br /> <b>Warning</b>: closedir(): supplied argument is not a valid Directory resource in <b>/in/XESpk</b> on line <b>10</b><br /> 0 files<br> <br /> <b>Warning</b>: sort() expects parameter 1 to be array, null given in <b>/in/XESpk</b> on line <b>17</b><br /> <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> </TABLE>
Output for 4.3.0 - 4.3.1
<br /> <b>Warning</b>: opendir(.) [<a href='http://www.php.net/function.opendir'>function.opendir</a>]: failed to open dir: Permission denied in <b>/in/XESpk</b> on line <b>2</b><br /> <br /> <b>Warning</b>: readdir(): supplied argument is not a valid Directory resource in <b>/in/XESpk</b> on line <b>5</b><br /> <br /> <b>Warning</b>: closedir(): supplied argument is not a valid Directory resource in <b>/in/XESpk</b> on line <b>10</b><br /> 0 files<br> <br /> <b>Warning</b>: sort() expects parameter 1 to be array, null given in <b>/in/XESpk</b> on line <b>17</b><br /> <TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks> <TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR> </TABLE>

preferences:
304.8 ms | 402 KiB | 464 Q