1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

entpacken von .tar archiv

Dieses Thema im Forum "PHP" wurde erstellt von thebig, 11. März 2009.

  1. thebig

    thebig Grünschnabel

    hi

    ich habe ein problem und zwar versuche ich seit paar tagen mir ein funktion aufzubauen, dir ein .tar archiv entpacken kann aber erfolglos.

    ich habe mich auch mit einer function von diese seite zusammen gesezt aber bis jetzt habe kein weg gefunden ich würde mich freuen hilfe von euch zu bekomen.

    Thebig
     
  2. CraHack

    CraHack Grünschnabel

    Wo genau liegt denn das problem? Die von dir angesprochene Funktion macht doch genau das was du willst.
     
  3. tobee

    tobee Erfahrenes Mitglied

    Hattest du schon ge:google:t?
    Du könntest dir mal bestehende Klassen anschauen: 1 2
     
  4. kuddeldaddeldu

    kuddeldaddeldu Erfahrenes Mitglied

    Hi,

    In was für einer Glaskugel hast Du das denn gesehen? :eek:

    @TheBig: Wie hast Du es denn bisher versucht?

    Und achte bitte in Deinen Beiträgen auf die Rechtschreibung, wie es unter Punkt 15 der Netiquette gefordert wird. Danke.

    LG
     
  5. thebig

    thebig Grünschnabel

    hallo

    Mein problem liegt daran dass es nur 1 oder manchmal 2 datei die richtig entpackt wurde.

    Das ist die von mir benutze Funktion

    PHP:
    1.  
    2. function untar($filename)
    3. {
    4.      if (isset($filename))
    5.     {
    6.         $tarfile=fopen($filename,"r");
    7.         $value=0;
    8.         $c=chr(0);
    9.         $tarcontent=array();
    10.         while (feof($tarfile)==false)
    11.             {
    12.                 $tarcontentvalue="";
    13.                 while ((ord($c)==0) && (feof($tarfile)==false))
    14.                     {
    15.                         $c=fgetc($tarfile);
    16.                     }
    17.                 while ((ord($c)!=0) && (feof($tarfile)==false))
    18.                     {
    19.                         $tarcontentvalue.=$c;
    20.                         $c=fgetc($tarfile);
    21.                     }
    22.                 $tarcontent[]=$tarcontentvalue;
    23.             }
    24.         $tarfile=fclose($tarfile);
    25.         $count=0;
    26.         while ($count<count($tarcontent))
    27.             {
    28.                 if (substr($tarcontent[$count],-1)=="/")
    29.                     {
    30.                         echo "Creating ".$tarcontent[$count]."<br>";
    31.                         mkdir($tarcontent[$count]);
    32.                         $count+=13;
    33.                     }
    34.                 elseif (!empty($tarcontent[$count]))
    35.                     {
    36.                         echo "Extracting ".$tarcontent[$count]."<br>";
    37.                        
    38.                         $newfile=fopen($tarcontent[$count],"w");
    39.                         fwrite($newfile,$tarcontent[$count+13]);
    40.                         $newfile=fclose($newfile);
    41.                         $count+=14;
    42.                     }
    43.                 else
    44.                     {
    45.                         $count++;
    46.                     }
    47.             }
    48.  
    49.             }
    50.  
    51. }  
    52.  
    ich lerne noch die sprache deswegen habe ich so viel Fehlern in meine Beiträge.
    Ich entschuldige mich und verpresche in der zukunft besser zu schreiben.

    Thebig
     
  6. CraHack

    CraHack Grünschnabel

    Hi
    http://www.tutorials.de/forum/php-tutorials/215261-dekompression-mit-php.html
    Ich stöbere gerne in den Tutorials daher kannte ich die Funktion. Das ist meines wissens die einzige derartige Funktion auf dieser Seite, deshalb bin ich davon ausgegangen dass er diese meint. ;)


    TheBig:

    Vergleich mal die Funktion von Dennis, mit der von dir. Die Findest du im von mir Geposteten Link.
    Am besten Stück für Stück durchgehen. Im Prinzip müssten die ja das selbe machen.
     
  7. Dennis Wronka

    Dennis Wronka Soulcollector

    Wenn Du Dich nicht mit dem Aufbau von Tar-Dateien befassen willst ist es meiner Meinung nach nicht sehr sinnvoll die Funktion nachprogrammieren zu wollen.
    Und wenn ich mir Deinen bisherigen Ansatz anschaue scheinst Du auch so einiges ausgelassen zu haben.

    Tar ist kein sehr komplexes Format, dennoch braucht es etwas Zeit es zu verstehen.
    Die Funktion die ich dort im Tutorial vorgestellt habe wurde uebrigens mittlerweile durch eine Klasse ersetzt. Diese kannst Du hier finden.

    Wenn Du aber wirklich lernen willst wie Tar-Dateien aufgebaut sind dann sollte Dir der Code (sowohl der Funktion als auch der Klasse) dabei helfen koennen. Und natuerlich geht nichts ueber einen Blick in ein paar selbstgepackte Tar-Dateien.
     

Diese Seite empfehlen