---
title: "Clueless.. read dir"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/151156-clueless-read-dir"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Fuel"
published: "2006-09-10T15:38:38.000Z"
updated: "2006-09-10T20:34:47.000Z"
replies: 4
views: 451
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/151156-clueless-read-dir"
---

# Clueless.. read dir

## #1 — Fuel, 2006-09-10T15:38Z

Jag är helt nollställd .. vet inte vad jag har gjort för fel .. försöker skapa lite kod som kollar i en mapp efter andra mappar ..

```php
<?php
// Fuel
$mod_dir = './mod';

function ed_collect_mods($mod_dir)
{
	$anum = 0;
	$mods = array(); 
	$mod_dir = @opendir($mod_dir);

	while (false !== ($mod = @readdir($mod_dir)))
	{
		if ((is_dir($mod)) && ($mod != ".") && ($mod != "..")) {
			$mods[$anum] = $mod_dir . '/' . $mod;
			$anum++; 
		}
	}
	
	@closedir($mod_dir);
	return $mods;
}

ed_collect_mods($mod_dir);

echo print_r($mods);
?>
```

Permalänk: https://www.webforum.nu/p/151156

## #2 — Dies_Irae, 2006-09-10T17:52Z

Du har 2 fel:

1) Du använder $mod_dir = opendir(...); vilket sätter mod_dir till resursen som öppnar katalogen. Dvs $mod_dir blir om jag inte minns helt fel något i stil med "Resource #1" hur som helst är de fel eftrsom du använder $mods\[index\] = $mod_dir . "/" ... 

Sen $mods är en variabel i local scope (i funktionen) och du glömer att spara vad funktionen skickar tillbaka:

$mods = ed_collection_mods(...);

Inte testat men dessa ändringar borde göra susen:

```
<?php
// Fuel
$mod_dir = './mod';

function ed_collect_mods($mod_dir)
{
    $mods = array();
    $dir_handle = @opendir($mod_dir);

    while (false !== ($mod = @readdir($dir_handle)))
    {
        if ((is_dir($mod)) && ($mod != ".") && ($mod != "..")) {
            $mods[] = $mod_dir . '/' . $mod;
	}
    }
    
    @closedir($dir_handle);
    return $mods;
}

$mods = ed_collect_mods($mod_dir);
echo print_r($mods);

?>
```

Permalänk: https://www.webforum.nu/p/1866029

## #3 — Fuel, 2006-09-10T18:13Z

nope :(

Permalänk: https://www.webforum.nu/p/1866037

## #4 — Fuel, 2006-09-10T20:16Z

Så .... herregud   :r is_dir($mod) --\> is_dir($mod_dir.'/'.$mod)   :r 

```php
<?php
$mods = array();
    $dir_handle = @opendir($mod_dir);

    while (false !== ($mod = @readdir($dir_handle)))
    {
        if ((is_dir($mod_dir.'/'.$mod)) && ($mod != ".") && ($mod != "..")) {
            $mods[] = $mod;
		}
    }
    
    @closedir($dir_handle);
?>
```

Permalänk: https://www.webforum.nu/p/1866104

## #5 — Fuel, 2006-09-10T20:34Z

...

Permalänk: https://www.webforum.nu/p/1866112

---

Tråden på webben: https://www.webforum.nu/amne/php/151156-clueless-read-dir
