4

i have a text (text.txt) file like this:

shir
beer
geer
deer

i have also a php page with that source:

<?php
foreach (glob("*.txt") as $filename) {   
    $file = $filename;
    $contents = file($file); 
    $reverse = array_reverse($file, true);
    $string = implode("<br>" , $contents);
    echo $string;
    echo "<br></br>";
}
?>

I want that in the php page it will show:

deer
geer
beer
shir

from the end of the file to the beginning.
thank you

codaddict
  • 445,704
  • 82
  • 492
  • 529
Ronny
  • 285
  • 3
  • 4
  • 10

2 Answers2

6

Looks like you are reversing the file name and not the contents.

Do

$reverse = array_reverse($content); // you can drop 2nd arg.
$string = implode("<br>" , $reverse);

in place of

$reverse = array_reverse($file, true); 
$string = implode("<br>" , $contents);

Also you can remove the temp variables from you script and do:

foreach (glob("*.txt") as $filename) {   
    echo implode("<br>" , array_reverse(file($filename))) . "<br></br>";
}
codaddict
  • 445,704
  • 82
  • 492
  • 529
2
<?php
foreach (glob("*.txt") as $filename) {   
    $file = $filename;
    $contents = file($file); 
    $reverse = array_reverse($contents, true);
    $string = implode("<br>" , $reverse);
    echo $string;
    echo "<br></br>";
}
?>

Your result was a $contents, without reverse.

Alex Pliutau
  • 21,392
  • 27
  • 113
  • 143