Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Automatyczne menu.
Forum PHP.pl > Forum > PHP
tadek92
Witam!
Chciałbym zrobić skrypt, który odczytuje zawartość folderu, a następnie wyświetla nazwy plików tak, aby znak "_" został zastąpiony spacją, pierwsza litera nazwy pliku została wypisana z wielkiej litery oraz żeby nie wyświetlało rozszerzenia pliku.

Czy jest to możliwe?

zawartość folderu czytam w ten sposóp:
  1. <?php
  2. if ($handle = opendir('folder'))
  3.                          {
  4.                                     while (false !== ($file = readdir($handle)))
  5.                              {
  6.                               if ($file != "." && $file != ".." )
  7.                                  {
  8.                                  echo "$file";
  9.                                  }
  10.                              }
  11.                      
  12.                          closedir($handle);
  13.                        }
  14. ?>


Proszę o pomoc i z góry za nią dziękuję.
bigZbig
Jest możliwe zobacz w manualu funkcjie pathinfo, ucfirst i str_replace.
tadek92
Znalazłem rozwiązanie:
  1. <?php
  2. if ($handle = opendir('folder'))
  3.                         {
  4.                        
  5.                         while (false !== ($file = readdir($handle)))
  6.                             {
  7.                              if ($file != "." && $file != ".." )
  8.                                 {
  9.                                 $path = "C:/xampp/htdocs/folder/$file";
  10.                                 $link = basename ($path);
  11.                                 $link = basename ($path, ".php");
  12.                                 $link = ucfirst($link);
  13.                                 $link = str_replace("_", " ", $link);
  14.                                 echo "<li><a href=$file>$link</a></li>";
  15.                                 }
  16.                             }
  17.                    
  18.                         closedir($handle);
  19.                       }
  20. ?>

Został mi tylko jeden problem: chciałbym, aby ścieżka do pliku pobierała się sama automatycznie, a nie żeby ją wpisywać ręcznie, ponieważ z reguły każdy serwer ma inną. Czy istnieje taka możliwość? Jeśli tak to proszę o pomoc.
erix
Cytat
Czy istnieje taka możliwość? Jeśli tak to proszę o pomoc.

Najprościej, to:
  1. <?php
  2. $path = dirname(__FILE__).'/'.$file;
  3. ?>


Ale będzie to wówczas równoważne z:
  1. <?php
  2. $path = './'.$file;
  3. ?>
tadek92
Dzięki za pomoc. Wszystko działa jak należy.

Kod
<?php
if ($handle = opendir('folder'))
                         {
                        
                         while (false !== ($file = readdir($handle)))
                             {
                              if ($file != "." && $file != ".." )
                                 {
                                 $path = dirname(__FILE__).'/'.$file;
                                 $link = basename ($path);
                                 $link = basename ($path, ".php");
                                 $link = ucfirst($link);
                                 $link = str_replace("_", " ", $link);
                                 echo "<li><a href=$file>$link</a></li>";
                                 }
                             }
                    
                         closedir($handle);
                       }
?>


Dzięki za pomoc.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.