Function gleich ausführen

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

  • Function gleich ausführen

    Hi

    Folgendes:
    PHP-Code:
    $variable date(m:s);
    sleep(4);
    echo 
    $variable
    Ist es möglich dass die Funktion date() erst beim Abruf der $variable ausgeführt wird? Wenn ja, was muss ich machen damit PHP sie vor der Pause ausführt und in die $variable speichert?

  • #2
    PHP-Code:
     $vorher date(m:s);
    sleep(4);
    echo 
    $vorher;
    echo 
    date(M:s); //danach... 
    sowas?

    Kommentar


    • #3
      PHP-Code:
      sleep(4);
      $variable date(m:s);
      echo 
      $variable
      EDIT:
      mist...
      Ich denke, also bin ich. - Einige sind trotzdem...

      Kommentar


      • #4
        Argh! Sorry ich glaube ich habe mich etwas falsch ausgedrückt.

        Ich möchte das die Funktion VOR der Pause ausgeführt und in die Variable gespeichert wird.

        Kommentar


        • #5
          Und was macht dein Code?

          Evtl. suchst du flush?
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            Hmm also eigentlich macht es etwa sowas:

            PHP-Code:
            $size1 filesize($file);
            usleep(100);
            $size2 filesize($file);
            $differenz $size1 $size2;
            echo 
            $differenz

            Kommentar


            • #7
              Und?
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                Mit flush() funktionierts nicht.

                Kommentar


                • #9
                  Was passiert?
                  Was passiert nicht?
                  Wie sollte es sein?
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    Okay sorry für die wenigen Infos. Also. Es wird eine Datei hochgeladen, deren Grösse ich VOR und NACH der Pause "speichern" und dann vergleichen will. Er gibt aber bei beiden Variablen die gleiche Grösse aus, ergo ist $differenz = 0.

                    EDIT:
                    Ich denke dass ist ja weil er die Variable $size1 erst nach der Pause setzt oder?

                    Kommentar


                    • #11
                      In deinem Codebeispiel ist ja auch nur eine Ausgabe drin... Wie sollte flush da funktionieren / eine Wirkung zeigen?

                      Mein Beispiel (s.o.) funktioniert jedenfalls...

                      EDIT:
                      Vielleicht ist auch die Zeitdifferenz zu kurz gewählt? Bei meinem Beispiel wird der Variablen eindeutig VOR der Pause ein Wert zugewiesen.

                      Kommentar


                      • #12
                        Könnte daran liegen, dass das Skript erst dann startet, wenn der Upload fertig ist
                        Ich denke, also bin ich. - Einige sind trotzdem...

                        Kommentar


                        • #13
                          Ne das Script läuft wärend dem Upload da der Upload nicht über ein PHP Script läuft sondern über FTP.

                          An der Zeitdifferenz liegt es bestimmt nicht denn ich hab es auch mir sleep(5); versucht.

                          Kommentar


                          • #14
                            PHP-Code:
                            echo date('r').'<br />-<br />';
                            echo 
                            str_repeat(' '1000);
                            flush();
                            sleep(5);
                            echo 
                            date('r'); 
                            Das funktioniert auf jeden Fall, solltest auch die Hinweise bei flush lesen...
                            Ich denke, also bin ich. - Einige sind trotzdem...

                            Kommentar


                            • #15
                              Ich glaube es könnte daran liegen das filesize() gecached wird. clearstatcache() soll da abhilfe schaffen aber es ändert sich irgendwie auch nix.

                              EDIT:
                              Sorry mein Fehler! Mit clearstatcache() funktioniert es! Danke für eure Hilfe!
                              Zuletzt geändert von PHPbeginner; 12.05.2005, 21:43.

                              Kommentar

                              Lädt...
                              X