azok: bin ich blind oder was?

hi!

ich verwende folgende if abfrage bei einem php-script und bekomm aber immer folgende fehlermeldung... - was mach ich falsch?

parse error, expecting T\_VARIABLE' or '$''

if(empty(file("file.txt")) || !file_exists("file.txt")) {
  echo '....';
}

danke für eure antworten!

lg
azok(=freak)

--
http://www.cssweb.at.tt wird teil einer privaten (meiner!) webseite.
------------------
Murphys Law: "Alles Schöne im Leben ist entweder illegal, ungesetzlich oder es macht dick."
  1. Hi,

    parse error, expecting T\_VARIABLE' or '$''

    Seh ich jetzt auch nicht - was ist mit der Zeile vorher, liegt der Fehler evtl. dort?
    Oder kann es sein, daß empty nicht mit dem Rückgabewert von file() zu Rande kommt?

    if(empty(file("file.txt")) || !file_exists("file.txt")) {

    Die Reihenfolge halte ich für ungünstig. Die Frage, ob das File leer ist, sollte nur gestellt werden, wenn das File existiert ...

    cu,
    Andreas

    --
    MudGuard? Siehe http://www.Mud-Guard.de/
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. hi!

      danke mal für deine antwort

      Seh ich jetzt auch nicht - was ist mit der Zeile vorher, liegt der Fehler evtl. dort?

      glaub ich nicht. davor lass ich eine variable exploden:

      $element = explode("~", $entry[x]);

      Oder kann es sein, daß empty nicht mit dem Rückgabewert von file() zu Rande kommt?

      könnte sein. müsste ich mich mal schlau darüber machen

      if(empty(file("file.txt")) || !file_exists("file.txt")) {

      Die Reihenfolge halte ich für ungünstig. Die Frage, ob das File leer ist, sollte nur gestellt werden, wenn das File existiert ...

      tja... soweit hatte ich noch gar nicht gedacht ;-)

      lg
      azok(=freak)

      --
      http://www.cssweb.at.tt wird teil einer privaten (meiner!) webseite.
      ------------------
      Murphys Law: "Alles Schöne im Leben ist entweder illegal, ungesetzlich oder es macht dick."
  2. parse error, expecting T\_VARIABLE' or '$''

    if(empty(file("file.txt")) || !file_exists("file.txt")) {

    empty() möchte wohl gerne den Status einer Variable prüfen und kann deshalb mit einer Funktion als Argument nicht so recht was anfangen.

    Zum Prüfen der Dateigröße verwenden andere Leute übrigens filesize(), das macht nicht ganz so viel Lärm wie Datei komplett auslesen und Inhalt gleich wieder wegwerfen. Die Hohe Schule des methodischen Vorgehens gebietet übrigens, dass man erst schaut, ob etwas da ist und dann versucht, den Inhalt zu prüfen. Oder hast Du schonmal versucht, bei einem nicht vorhandenen Glas Marmelade die Inhaltsmenge zu bestimmen?

  3. Hallo azok,

    if(empty(file("file.txt")) || !file_exists("file.txt")) {

    <zitat quelle="http://de3.php.net/empty">
    empty() kann nur auf Variablen, nicht aber auf Ausdrücke angewandt werden.
    </zitat>
    außerdem wäre ein count() für ein Array evtl. sinnvoller.

    Grüße aus Nürnberg
    Tobias