implode unter windows == sehr langsam

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

  • implode unter windows == sehr langsam

    Hallo,
    ich habe ein kleines Problem mit den neueren Apache und php Versionen.

    bisher habe ich ein "Wampp" von http://www.firepages.com.au (PHPdev5) auf mein Windows Xp prof. Rechner genutzt.
    (Apache 1.27 und php 4.2.2)
    AMP XP3200
    1gb ram
    serial ata 80Gb (x2)

    Jetzt habe ich aber auf Xampp umgestellt und nun dauert die Ausführung um ein Array in einen String umzuwandeln sehr, sehr lange.
    Nun da mir bis jetzt auch noch keiner von der Xampp seite weiterhelfen konnte habe ich selbst einmal den apache 2 und php 5 auf meinen rechner installiert,
    aber das Ergebnis ist leider gleich geblieben, es dauert immer noch sehr, sehr lange.

    Mit diesem Script(s.u) brauch die implode Funktion über 7 sec. unter php5 auf windows,
    mit den wampp von phpdev5 braucht die implode Funktion nur 0.023 sec auf windows,
    genau so wie bei meinen Webhoster, da braucht die implode Funktion auch nur 0.023 sec.
    (Webhoster, apache 2 php5 Linux)

    Also welche Einstellung könnte dafür im apache, oder bei php verantwortlich sein ?

    Hier das Beispiel Script:
    PHP-Code:
    <?php
    function get_microtime() {
      list(
    $usec$sec) = explode(' ',microtime());
      return ((float)
    $usec + (float)$sec);
    }
    $PARSE_TIME_START get_microtime();
    function 
    parse_time($text=false) {
      echo 
    '<p align="center">'.(($text) ? $text.'<br />' '').'<strong>'.substr((get_microtime() - $GLOBALS['PARSE_TIME_START']),0,8).'</strong></p>';
      if(
    $text) {
        
    $GLOBALS['PARSE_TIME_START'] = get_microtime();
      }
    }
    function 
    MyImplode($array) {
      
    $string '';
      for(
    $i=0;$i<count($array);$i++) {
        
    $string .= $array[$i];
      }
      return 
    $string;
    }
    $text      'Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext,
    Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, Blindtext, '
    ;

    $new_array = array();

    for(
    $i=0;$i<2000;$i++) {
      
    $new_array[$i] = $text;
    }
    parse_time('for:');
    // for schleife braucht ~ 0.002400

    $string implode('',$new_array);
    parse_time('implode:');
    // implode braucht ~ 6.269845

    $string MyImplode($new_array);
    parse_time('MyImplode:');
    // MyImplode braucht ~ 6.444344
    ?>
    Bin über jede hilfestellung sehr dankbar

    Gruß
    Runner
    Zuletzt geändert von runner; 03.11.2004, 22:02.

  • #2


    ist dir aufgefallen, daß der thread auf einmal extrem breit ist?
    umbrichst du bitte deinen code?
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      Original geschrieben von derHund


      ist dir aufgefallen, daß der thread auf einmal extrem breit ist?
      umbrichst du bitte deinen code?
      ups... sorry, habs schon geändert, hast du denn vielleicht auch eine lösung für das Problem ?

      Kommentar


      • #4
        kann mir denn hier keiner weiterhelfen

        Kommentar


        • #5
          *hoch schieb*

          Kommentar

          Lädt...
          X