Hallo …
Umgebung:
Win 2K Adv. Server
MySQL 5
Apache 2.2.4
Open SSL 0.9.8d
PHP 5.2.1
Ich will mit PHP rar files entpacken. Funktioniert auch. Nur das Problem liegt im schließen der File. Wenn sie Vollkommen entpackt ist, dann lässt sie der apache trotz rar_close($filename) nicht los.
Einfachster test hierfür ist wenn ich versuche die File zu löschen.
Zugriff nicht möglich.
Ich beende apache.
Löschen möglich!
Script ist exakt das was auf php.net unter der function rar::extract steht!
<?php /* example by Erik Jenssen aka erix */<br />
$filename = "foobar.rar";
$filepath = "/home/foo/bar/";
$rar\_file = rar\_open($filepath.$filename);
$list = rar\_list($rar\_file);
foreach($list as $file) {
$entry = rar\_entry\_get($rar\_file, $file);
$entry-\>extract("."); // extract to the current dir
}
rar\_close($rar\_file);
?\>
Ich benutze das Script in abgewandelter form um meine rar archive zu entpacken. Mit zip funktioniert es wunderbar. Aber bei rar, dadurch das für jede file ne neue instanz von apache gestartet wird, ohne die alte zu schließen (was mit rar_close($filename) geschehen sollte), habe ich bei der 2. file einen vollgelaufenen arbeitsspeicher!
Was mach ich falsch? Habe die aktuellste php_rar.dll, die extension ist korrekt regestiert und ja auch nutzbar.
Hoffe wer hat ne idee.
Grüße vom digi