Verschiedenes

ludz

Erfahrenes Mitglied
Hallo Leute,

bitte nicht gleich loszimmern von wegen Suchfunktion, das hab ich alles schon benutzt, aber so wirklich was brauchbares findet man da auch nicht...
Naja und wenn ich mich zu dumm angestellt haben sollte, dann tuts mir leid ;-)

Also, zunächst einmal was ganz simples: Was haben denn bei PHP die doppelten Dollarzeichen zu bedeuten?!
Ich meine, Variablen werden ja mit einem Dollarzeichen am Anfang gelistet, aber beim Durchstöbern von so einigen Quelltexten fällt mir immer wieder sowas auf $$variable.
Was bedeutet das denn?!

Dann... ich habe ein Upload Script geschrieben, ganz einfach, man kann eine Datei mit einem Passwort hochladen.
Nun ist aber folgendes Phänomen aufgetreten:

Das Uploaden und das Script funktionieren einwandfrei... zumindest bei mir zuhause und auf vielen anderen Rechnern auch, allerdings stellten wir heute in unserer Schule fest, dass die dortigen Computer (Notebooks), die über ein Funknetzwerk und über einen entsprechenden Server ins Internet gehen, scheinbar Probleme damit haben: Lädt man eine Datei mit gleichem Namen, wie sie schon auf dem Server vorhanden ist hoch (natürlich eine geänderte Datei), dann wird die alte zwar scheinbar überschrieben und die neue auch in einer Liste (ich lasse das Verzeichnis auslesen, mit best. Dateieigenschaften) aufgeführt, lädt man diese allerdings runter und öffnet sie, stellt man fest, dass sie trotz des vermeintlich neueren Änderungsdatums noch den gleichen INhalt, also den Inhalt der alten Datei besitzt und nicht die Aktualisierungen enthält.
Ich könnte mir höchstens vorstellen ,dass das an den Einstellungen der Schulcomputer liegt (die werden ja, was Rechte angeht, ziemlich beschnitten :-) ).
Naja vielleicht habt ihr ne Idee...

Ciao

ludz
 
also zum ersten:
PHP:
<?php
$blub = "alora";
$alora = "ahaa, jetzt verstehe ich!";
echo $$blub;
?>
das würde "ahaa, jetzt verstehe ich!" ausgeben

zum zweiten:
kA 8-)

greetZZzz
 
Ich denke mal, das liegt daran, dass in der Variable $blub der Name der anderen Variable steht. Also ist $$blub das gleiche wie $alora.
Sicher bin ich mir nicht, aber es ist zumindest eine (mehr oder weniger) logische Erklärung. :rolleyes:
 
hmm ja, so kann ich mirs auch nur erklären. So richtig schlüssig ist mir das ganze allerdings noch nicht?!
(Vor allem will sich mir der Sinn dieser Schreibweise nicht ganz ergründen. Warum nicht gleich echo $alora; ?)
 
UM GOTTES WILLEN ...

... bitte gewöhnt euch nicht an mit variablen variablen zu programmieren.

Es ist der Schlimmste Stil den mann sich angewöhnen kann.

Denn wenn mann nach ner weile in ein groesseres Projekt schaut und zum verstaendniss versucht einer Variable zum Ursprung zu folgen der wird verzweifeln und das projekt nicht verstehen.

Dies ist mieser Stil und wenn mir jemand code mit aus Variablen gebildeten Variablen serviert wird getreten ! :-)
 
Original geschrieben von asphyxia
Ich denke mal, das liegt daran, dass in der Variable $blub der Name der anderen Variable steht. Also ist $$blub das gleiche wie $alora.
Sicher bin ich mir nicht, aber es ist zumindest eine (mehr oder weniger) logische Erklärung. :rolleyes:

genau so ist es.
Bei einer DoppelVariable wird zuerst der Interpreter die nachfolgende Variable interpretieren und daraufhin eine neue bilden.
Jedoch wie gesagt: mieser stil !!
 
Es ist der Schlimmste Stil den mann sich angewöhnen kann.
Stimmt nicht, den Platz hat GoTo schon eingenommen. :p
Trotzdem hält das viele VB-Programmierer nicht davon ab, davon übermässigen Gebrauch zu machen. Andererseits sind mir Leute, die VB für eine gute Programmiersprache halten, eh irgendwie suspekt. :rolleyes:

PS: Falls Du wirklich irgendwann mal jemanden dafür treten solltest - verpass ihm von mir auch noch einen Tritt. :-)
 
Zurück