Witam, mam pewien problem, ponieważ bzdecompress pierwszy wynik dekompresuje a drugi już nie...

Plik testowy:
  1. <?php
  2. $fp = fopen('test/plugin.otlp', 'w');
  3. fwrite($fp, bzcompress('test1'). '<*>path<*>sciezka
  4. <*>file<*>
  5. ' .bzcompress('test'). '<*>path<*>sciezkax');
  6. fclose($fp);
  7. $mojedata[0] = 'test';
  8. $pluginfile = 'test/plugin.otlp';
  9. $packed = new OTLP('test/plugin.otlp');
  10. $packed->getData();
  11. ?>


Klasa:
  1. <?php
  2. class OTLP
  3. {
  4. public $Data;
  5. public $Path;
  6. public $Numfiles;
  7.  
  8. function __construct($path)
  9. {
  10. $this->Path = $path;
  11. if(is_file($path))
  12. $this->Data = @file_get_contents($path);
  13. else
  14. $this->Data = '404';
  15. }
  16.  
  17. function getData()
  18. {
  19. $arrayfiles = array();
  20. $contents = $this->Data;
  21. $files = explode('<*>file<*>', $contents);
  22. foreach ($files as $key => $value)
  23. {
  24. $numfiles++;
  25. $temp = explode('<*>path<*>', $value);
  26. $arrayfiles[$temp[1]] = bzdecompress($temp[0]);
  27. }
  28. $this->Numfiles = $numfiles;
  29. print_r($arrayfiles);
  30. // returns array with files
  31. }
  32. }
  33. ?>


Skrypt zwraca:
Cytat
Array ( [sciezka ] => test1 [sciezkax] => -5 )



A oto plik:
Cytat
BZh41AY&SY3ş×%  €  !šh3M—‹ą"ś(HÝk’€<*>path<*>sciezka
<*>file<*>
BZh41AY&SY3‹ĎŹ € !˜„]ÉáB@Î/>°<*>path<*>sciezkax


Poco mi coś w stylu zip'a?
W PHP ciężka jest obsługa zip'a nie mam nerwów aby siedzieć nad funkcjami/klasami zip'a (zawsze zwracają błędy - nawet przykłady z manuala - zip_open nie zwraca wartości resource ...), mam gotową kompresję (bzip) to co za problem winksmiley.jpg

@edit
Rozwiązałem błąd ^^
Problem leżał w tym że był znak ,,Enter" - nowa linia ;P
fwrite($fp, bzcompress('test1'). '<*>path<*>sciezka<*>file<*>' .bzcompress('test1'). '<*>path<*>sciezkax');

Dziękuję, Babcia@Stefa