Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Klasa do obsługi folderów
Forum PHP.pl > Forum > PHP
potreb
Witam. Napisałem pewną banalną klasę do wyświetlania folderów:
  1. <?php
  2. class Folders {
  3.  
  4. public function low($file) {
  5. $this->file = $file;
  6. if($this->file!="." && $this->file!=".." && !eregi("index.html",$this->file) && file_exists($this->getpatch().$this->file."/block.php"))
  7. {
  8. include $this->getpatch().$this->file."/block.php";
  9. echo "<tr><td class='plug_inst'>".$this->a."</td><td class='plug_inst'><a href='".$this->getpatch().$this->file."/admin.php'>".$titleblock."</a></td>
  10. <td class='plug_inst'>&nbsp;&nbsp;<a href='admin.php?co=blocks&id=install&file=".$this->getpatch().$this->file."&fa=yes'>Instaluj</a></td>
  11. <td class='plug_inst'>$author</td><td class='plug_inst'>".($add2menu==1 ? 'Tak' : 'Nie')."</td></tr>";
  12. $this->a++;
  13. }
  14.  
  15. }
  16.  
  17. }
  18.  
  19. include "includes/php/folders.php";
  20.  
  21. $new = new Pug;
  22. $new->Path = "modules/";
  23. $new->sche();
  24. ?>


folders.php
  1. <?php
  2. class Pug extends Folders{
  3. public $Path;
  4.  
  5. public function getpatch() {
  6. return $this->Path;
  7. }
  8.  
  9. public function sche()
  10.  {
  11.  
  12. if ($handle = opendir($this->getpatch())) 
  13. {
  14. $a=1;
  15. $this->a = $a;
  16. while ($file = readdir($handle))
  17. {
  18.  
  19. $this->low($file);
  20.  
  21. } 
  22. closedir($handle);
  23. }
  24. }
  25.  
  26. }
  27. ?>


Jest to dość banalnie zrobiona, ale ładnie chodzi.
Pytanie jest następujące:

Chcę stworzyć nową metodę np: install, która będzie odpowiadała za instalację. Tylko nie wiem jak ją wywołać, aby dodać jakiś rekord.
wlamywacz
Przykro mi ale tragedia. Do tego celu w php masz specjalny iterator
  1. <?php
  2. class filesmodel {
  3.  
  4. public function getFiles($patch) {
  5.  
  6. foreach(new DirectoryIterator($patch) as $file) {
  7. if(!$file->isDot()) {
  8. $array[] = array($file->getFilename(), $file->getPath());
  9. }
  10. }
  11. return $array;
  12.  
  13. }
  14. }
  15. ?>

Twoja klasa nie ma sensu bo zwraca html, a ma zwracać tablice aby w innej funkcji obrobić ją do własnych potrzeb. Temat na przedszkole pasuje bardziej
kszychu
Przychylam się do wniosku i przenoszę.

--w związku z raportem i krótką dyskusją - przenoszę na PHP (cysiaczek)
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.