met php een txt file maken

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Robin

Robin

21/11/2008 11:49:00
Quote Anchor link
Ik exporteer een mappenlist naar een txt file, maar alle mapnamen staan na elkaar geplakt. Hoe kan je zorgen voor een "enter"?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$file
= fopen("test.txt", "w+");
$content = "";
if($handle = opendir("test")) {
    while(($read = readdir($handle)) !== false) {
          if ($read != "." && $read != ".."){
                $content += $read."<br />";
        }
    }
}

echo fwrite($file,$content);
fclose($file);
?>
Gewijzigd op 01/01/1970 01:00:00 door Robin
 
PHP hulp

PHP hulp

21/05/2024 22:01:13
 
Sander Z

Sander Z

21/11/2008 12:15:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
fwrite($file,nl2br($content));


Roep maar wat?
Gewijzigd op 01/01/1970 01:00:00 door Sander Z
 
Michael Voeten

Michael Voeten

21/11/2008 12:19:00
Quote Anchor link
gebruik eens

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$file
= fopen("test.txt", "w+");
$content = "";
if($handle = opendir("test")) {
    while(($read = readdir($handle)) !== false) {
          if ($read != "." && $read != ".."){
                $content .= $read."\r\n";
        }
    }
}

echo fwrite($file,$content);
fclose($file);
?>


let op je gebruikt += ( dit gebruik je eigenlijk om op te tellen )
Gewijzigd op 01/01/1970 01:00:00 door Michael Voeten
 
Robin

Robin

21/11/2008 12:25:00
Quote Anchor link
oké, bedankt!!
Oplossing van mikey werkt!
Nu zit ik nog met de vraag:
Als er in 1 van die mappen nog submappen zitten, en daarin nog eens submappen, hoe kan ik doe dan afbeelden?
Dus een soorte dir tree maken zoals in cmd in windows
 
John Cena

John Cena

21/11/2008 12:25:00
Quote Anchor link
En /n werkt niet? :)
 
Robin

Robin

21/11/2008 12:46:00
Quote Anchor link
jawel, die werkt ook

evene aan het expirimenteren om submappen ook te listen, maar ik krijg warnings:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
$file
= fopen("Downloads.txt", "w+");
$content= "";
//open dir series
if($handle = opendir("../Series")) {
    while(($read = readdir($handle)) !== false) {
          if ($read != "." && $read != ".."){
           $content .= $read."\r\n";
           //open dir in dir series, als er submap is
        if($handle2 = opendir($read)) {
            while(($read2 = readdir($handle2)) !== false) {
                  if ($read2 != "." && $read2 != ".."){
                        $content .= $read2."\r\n";    
                }
            }
        }
        }
    }
}

echo fwrite($file,$content);
fclose($file);
?>

de "hoofdmapjes worden naar de file weggeschreven, de submapjes niet, ik krijg deze error:
warning: failed to open dir: bad file descriptor
Gewijzigd op 01/01/1970 01:00:00 door Robin
 
Michael Voeten

Michael Voeten

21/11/2008 13:21:00
Quote Anchor link
::snippet::
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
if ( is_dir($read))
{
  #hier weer een loop.
}
Gewijzigd op 01/01/1970 01:00:00 door Michael Voeten
 
Robin

Robin

21/11/2008 15:57:00
Quote Anchor link
nu krijg ik idd al geen errors of warnings meer, maar met deze code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
$file
= fopen("Downloads.txt", "w+");
$content= "";
//open dir series
if($handle = opendir("../test")) {
    while(($read = readdir($handle)) !== false) {
          if ($read != "." && $read != ".."){
           $content .= $read."\r\n";
           //open dir in dir series, als er submap is
          if (is_dir($read))
        {

            if($handle2 = opendir($read)) {
                while(($read2 = readdir($handle2)) !== false) {
                      if ($read2 != "." && $read2 != ".."){
                            $content .= $read2."\r\n";    
                    }
                }
            }
        }
        }
    }
}

echo fwrite($file,$content);
fclose($file);
?>



toont hij nog altijd geen submapjes.
De mapjes in de map 'test' worden weggeschreven naar een file, maar de submapjes nog altijd niet.
Maar als er nu in die submapjes nog mapjes iztten, moet ik dan weer zo'n if erin nesten? er moet toch een beter manier zijn? of niet?
 
Marco

Marco

21/11/2008 16:03:00
Quote Anchor link
Ik heb hier een function gevonden die ik pas nodig had bij het oplossen bij een probleem van iemand hier op dit forum. De functie indexeerd alle files in de geselecteerde folder, dus ook alle files in submappen. Je moet het even aanpassen om er voor te zorgen dat ie in plaats van files directories zoekt.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
function directoryToArray($directory, $extension="", $full_path = true) {
    $array_items = array();
    if ($handle = opendir($directory)) {
        while (false !== ($file = readdir($handle))) {
            if ($file != "." && $file != "..") {
                if (is_dir($directory. "/" . $file)) {
                    $array_items = array_merge($array_items, directoryToArray($directory. "/" . $file, $extension, $full_path));
                }

                else {
                    if(!$extension || (ereg("." . $extension, $file)))
                    {

                        if($full_path) {
                            $array_items[] = $directory . "/" . $file;
                        }

                        else {
                            $array_items[] = $file;
                        }
                    }
                }
            }
        }

        closedir($handle);
    }

    return $array_items;
}

?>
Gewijzigd op 01/01/1970 01:00:00 door Marco
 
Robin

Robin

21/11/2008 16:14:00
Quote Anchor link
hmmm, maar die functie returnt een array
als ik de functie echo fwrite($file,$content); gebruik, schrijft ie niets weg naar de file... Ik geraak er niet aan uit :p!
 
Marco

Marco

21/11/2008 18:37:00
Quote Anchor link
Als je je paths in de array hebt gezet, kun je het naar de txt schrijven:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$paths
= directoryToArray("/");

$content = "";
foreach($paths as $key => $value) {
  $content .= $value."\n";
}


fwrite("bestand.txt", $content);
?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.