filemtime problem

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

  • filemtime problem

    Hi

    dies funktioniert:
    PHP-Code:
    <?php 
    $path 
    "/home/www/xxxx.de/htdocs/index.php";
    $update filemtime(basename($path));
    setlocale(LC_TIME,"de_DE","de","ge");
    echo 
    "<p>:: Letztes Update: <strong>"strftime("( %A %d.%m.%Y )"$update),"</strong> ::<br />
    :: text text text::</p>"

    ?>
    das aber nicht, warum?
    PHP-Code:
    <?php 
    $path 
    "/home/www/xxxx.de/htdocs/ordner/bla.php";
    $update filemtime(basename($path));
    setlocale(LC_TIME,"de_DE","de","ge");
    echo 
    "<p>:: Letztes Update: <strong>"strftime("( %A %d.%m.%Y )"$update),"</strong> ::<br />
    :: text text text::</p>"

    ?>
    sobald ich also eine datei in einem ordner abfragen will funktioniert das ganze nicht bzw. die datumsausgabe ist 1.1.1970 oder so.

  • #2
    Schau Dir mal an was die Funktion basename macht und dann erübrigt sich Deine Frage schon.

    Oder anders ausgedrückt: das Datum 1.1.1970 bedeutet, dass er die Datei nicht gefunden hat.
    Zuletzt geändert von DSB; 05.06.2004, 00:20.

    Kommentar


    • #3
      Original geschrieben von DSB
      Schau Dir mal an was die Funktion basename macht und dann erübrigt sich Deine Frage schon.

      Oder anders ausgedrückt: das Datum 1.1.1970 bedeutet, dass er die Datei nicht gefunden hat.
      wenn du es glaubst oder nicht ich steht vor dem wald und sehe die bäume nicht
      hm..datei ist da, ordner stimmt auch..ich bin blind?

      Kommentar


      • #4
        OK.

        PHP-Code:
        $path "/home/www/xxxx.de/htdocs/ordner/bla.php"
        basename($path) liefert als Wert "bla.php"

        filemtime versucht nun die Daten der Datei "bla.php" im momentanen Ordner auszulesen. Diese Datei existiert aber im Ordner "ordner" (den Du ja vorsorglich mal weggeschnitten hast) und nicht im Hauptverzeichnis.
        Deshalb liefert die Funktion false als Rückgaebwert und das daraus resultierende Datum ist 1.1.1970, weil ein Unixtimestamp die Anzahl der Sekunden seit dem 1.1.1970 sind. In dem Fall eben 0 Sekunden.
        Uff, alles klar jetzt?

        Noch ein Tipp. Benenne Variablen immer sinnvoll.
        Die Variable $path da oben enthält ja nicht den reinen Pfad sondern auch den Dateinamen. Da geht die Verwirrung bereits bei der Bezeichnung los.
        Bei größeren Projekten musst Du mit einem Blick wissen, was gemeint ist.

        Kommentar


        • #5
          Meine Fresse bin ich blöde
          Jao basename und ich war der Meinung ich habe es rausgenommen oh man, ich sollte ab und zu auch mal was schlafen..

          EDIT: Danke sehr!

          Kommentar

          Lädt...
          X