Jump to content

Echo array


AntonM

Recommended Posts

Hello, I'm having a hard time trying to make my code work. How should I go about when I want to echo an array (name, type, size and lastmod) if the user types a path for a directory? I have tried "foreach($results as $res) echo $res" but that obviously doesn't work, or maybe I'm trying to insert it at the wrong place in the code? Then I search on the net and found that you instead should insert:

"echo $results["name"]."".$results["type"]... etc, and tried to insert it right after the array. But that doesn't work eiter. So now I'm stuck.

:-\

<?php

  function getDirectoryList ($directory)
  {
    $results = array();
    $handler = opendir($directory);
    while ($file = readdir($handler)) {
        $results[] = array(
         "name" => "$file",
         "type" => mime_content_typ("$file"),
         "size" => filesize("$file"),
         "lastmod" => filemtime("$file")
         );
       }
    
    closedir($handler);
    return $results;
  }

?>
<html>
<body>
<form method="post" action="getdirlist.php">
explore /dir/
<input type="text" name="dir">
<input type="submit" value="show">
</form>
<?
if(isset($_POST['dir'])) {
$dirlist = getDirectoryList($_POST['dir']);
}
?>
</body>
</html>
Link to comment
https://forums.phpfreaks.com/topic/295117-echo-array/
Share on other sites

You need to loop over the array returned by getDirectoryList() function. Then you can echo the name, type, size and lastmod info for each file. Example

if(isset($_POST['dir']))
{
    $dirlist = getDirectoryList($_POST['dir']);

    // loop over the array of files returned by getDirectoryList
    foreach($dirlist as $file)
    {
        echo $file['name'] . ' - ' . $file['type'] . ' - ' . $file['size'] . ' - ' . $file['lastmod'] . '<br />'; 
    }
}
Link to comment
https://forums.phpfreaks.com/topic/295117-echo-array/#findComment-1507617
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.