PEAR Cache => Fehlermeldung abwechselnd

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PEAR Cache => Fehlermeldung abwechselnd

    Ich bekomme beim Aktualsieren öfter mal eine Fehlermeldung:

    Warning: fread() [function.fread]: Length parameter must be greater than 0. in D:\__xampp\php\pear\Cache\Container\file.php on line 149
    Script an sich (ist nur ein erster Test des Moduls)...

    PHP-Code:
    <?php 

    // Modul inkludieren 

    require_once("Cache/Output.php");

    // Renderzeit
    $begin microtime(true);


    $options = array(

                     
    "cache_dir"         => "cachefiles",  //TEST

                     
    "filename_prefix"   => "tmp_"

                 
    );



    $cache = new Cache_Output("file"$options);

    // Das Script basiert auf einem Cookie und zwei Werten, die 

    // via GET uebergeben werden

    $cache_handle = array(

                           
    'datei' => __FILE__,

                           
    'wert1'  => $_GET['wert1'], 

                           
    'wert2'  => $_GET['wert2'],

                           
    'cookie' => $_COOKIE

                         
    );

    // ID generieren

    $id $cache->generateID($cache_handle);

     

    // Versuch, die Daten auszulesen

    if ($content $cache->start($id)) 

    {

       
    // Cache-Hit! Daten konnten gefunden werden

       // und befinden sich jetzt in $content

       
    echo  $content// Daten ausgeben

       
    $end microtime(true);
       
    $render $end-$begin;
       echo 
    $render;
       
       die();  
    // Kopie ausgegeben => Script beenden

    }  



    // Programm wurde nicht abgebrochen => Cache-Miss! 


    echo 'Testcache';
    // Hier kommt das eigentliche Programm

     

    // Daten speichern und ausgeben/ Cache ist 60 Sekunden gueltig

    echo $cache->end(60);

    $end microtime(true);
    $render $end-$begin;
    echo 
    $render;
    ?>
    Wieso kommt diese Meldung, liegt es an meinem Code oder am Cache Modul?

  • #2
    Warning: fread() [function.fread]: Length parameter must be greater than 0. in D:\__xampp\php\pear\Cache\Container\file.php on line 149
    Die betroffenden Zeilen ( +10 -10) um file.php <149> könnten für eine Hilfestellung ziemlich nützlich sein, meinst du nicht ?
    gruss Chris

    [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

    Kommentar


    • #3
      Ja natürlich, bin aber davon ausgegangen, dass es ein öffentlich zugängliches Pear-Modul ist... uns schonmal jemand damit Erfahrungen hatte:

      PHP-Code:
      // retrive the content
              
      if (!($fh = @fopen($file'rb'))) {
                  return new 
      Cache_Error("Can't access cache file '$file'. 
      Check access rights and path."
      __FILE____LINE__);
              }
              
      // File locking (shared lock)
              
      if ($this->fileLocking) {
                  
      flock($fhLOCK_SH);
              }
              
      // file format:
              // 1st line: expiration date
              // 2nd line: user data
              // 3rd+ lines: cache data
              
      $expire trim(fgets($fh12));
              if (
      $this->max_userdata_linelength == ) {
                  
      $userdata trim(fgets($fh));
              } else {
                  
      $userdata trim(fgets($fh$this->max_userdata_linelength));
              }
              
      $cachedata $this->decode(fread($fhfilesize($file)));

              
      // Unlocking
              
      if ($this->fileLocking) {
                  
      flock($fhLOCK_UN);
              }
              
      fclose($fh); 

      Kommentar

      Lädt...
      X