Just nu i M3-nätverket
Gå till innehåll

addString() i PEAR Archive TAR


Frogge

Rekommendera Poster

Använder mig av PEAR Archive TAR för att bygga filarkiv för nerladdning av exporterade databaser. Då det exporterade innehållet ligger i strängar (för varje enskild fil), så använder jag mig av addString.

 

Problemet är att när jag försöker använda detta flera gånger, skrivs filen över hela tiden, och endast den sist tillagda finns kvar i tar-arkivet.

 

 

$export = [color="#0000ff"]array[/color]('export1.txt' => 'innehåll1', 'export2.txt' => 'innehåll2', 'export3.txt' => 'innehåll3');

$tmpfname = [color="#ff0000"]tempnam[/color]('/temp', 'dbexp');

$tar_[color="#0000ff"]object[/color] = [color="#0000ff"]new[/color] Archive_Tar($tmpfname);

[color="#0000ff"]foreach[/color] ($export [color="#0000ff"]as[/color] $filename => $content) {

$tar_[color="#0000ff"]object[/color]->addString($filename, $content);

}

 

 

Om vi säger att $export ser ut enligt ovan, blir resultatet att endast export3.txt finns med i arkivet i slutändan. Hur kommer detta sig? Vad har jag gjort för fel? Tycker att jag följt exemplena och dokumentationen för PEAR Archive TAR på PHP Freaks.

 

Mycket märkligt tycker jag, då addString ska funka just som en 'add' och inte en 'create'.

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...