Frage zu einem Befehl
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anregung
beispiel
beitrag
blabla
falsch liege
fragen
gut frage
layout
letzte mal
mitglied
pascal
prozedur
punkten
sauber echo
schleifen
sinnen
thw
variable
verstehe
zhler
-
Hi,
ich lerne zur Zeit PHP und habe mich gewundert, warum man einen Befehl folgenderma?en schreibt:
Das ist der Code:
do { echo "<tr><td align =\"center\" valign=\"top\">$zaehler</td>\n"; echo "<td align=\"center\" valign=\"top\"> [b]" . $zaehler * $zaehler . "[/b] </td></tr>\n"; $zaehler = $zaehler + 1; } while ($zaehler <= $end);
Das fettgedruckte verstehe ich nicht so ganz. Warum schreibe ich ". blabla ." ??? Die Punkte verstehe ich einfach nicht, was haben die f?r einen Sinn?
Beitrag ge?ndert am 27.01.2006 19:17 von dreamweaver
Beitrag ge?ndert am 27.01.2006 19:22 von dreamweaver -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich hab ma das layout Layout vom Script weggeschnitten damits ?bersichtlicher wird. *g*...
<?
$zaeler=2;
do {
echo "$zaehler";
$zaehler * $zaehler // entspricht: Z?hler^2
$zaehler = $zaehler + 1; //oder:
$zaeler++; // $z?hler wird immer wenn es aufgerufen wird mit 1 addiert.
}
echo "$zaehler";
while ($zaehler <= $end);
?>
*EDIT*
Oh sorry, das war wohl nicht ganz deine Frage...
Soweit ich wei?, wird ein php codeabschnitt gekennzeichnet. Also das ausf?hren einer Funktion oder in deinem Fall das Ausgeben einer Variblen...
Korrigiert mich, wenn ich falsch liege.
Beitrag ge?ndert am 27.01.2006 19:48 von andifr -
@andifr: Du hast seine Frage nicht beantwortet...
dreamweaver schrieb:
Die Punkte verstehe ich einfach nicht, was haben die f?r einen Sinn?
Der Punktoperator dient zum Verketten von zwei Zeichenketten. Je nach datentyp kannst du ja verschiedene Sachen mit einer Variable machen. Zahlen z.B. kannst du addieren, multiplizieren und noch einiges anderes. Mit Zeichenketten dagegen ist das meiste weniger sinnvoll (zumidnest auf den ersten Blick). Deshalb gibt's den speziellen Operator ".", der zwei Zeichenketten zu einer verbindet:
$str1="Hallo, "; $str2="du da!"; $str3=$str1.$str2; echo($str3);
Dieser Code gibt "Hallo, du da!" aus. Also sozusagen eine Addition f?r Zeichenketten.
Wenn du die Variablen mit echo ausgeben willst, kannst du auch einfach schreiben:
echo("blablabla $variable blablabla");
statt
echo("blablabla ".$variable." blablabla");
Das zweite finde ich aber sauberer programmiert. Letztendlich ist es Geschmackssache :-)
Btw: Du kannst die Funktionalit?t deines Beispiels mit einer for-Schleife wesentlich eleganter l?sen (so als Anregung f?r weitere ?bungen *g*)
HTH,
thw
EDIT: Tja Andi, das war's wohl leider immer noch nichts. Macht aber nix :-)
Ich bin mir relativ sicher, dass ich richtig liege. Zumindest habe ich den Punkt immer so verwendet.
Beitrag ge?ndert am 27.01.2006 19:57 von thw -
Ist z.B. praktisch, wenn du l?ngere Strings verkn?pfen willst
// Code ohne Sicherheitschecks!
$strUser = "Dreamweaver"; $strDate = "27.01.2006"; $strHalloWelt = 'Das Lima-City Mitglied <strong>'; $strHalloWelt .= $strUser; $strHalloWelt .= '</strong> hat sich das letzte mal am <strong>' $strHalloWelt .= $strDate; $strHalloWelt .= '</strong> angemeldet
w?rde
Das Lima-City Mitglied <strong>Dreamweaver</strong> hat sich das letzte mal am <strong>27.01.2006</strong> angemeldet
im Browser siehst du dann
Das Lima-City Mitglied Dreamweaver hat sich das letzte mal am 27.01.2006 angemeldet
-
Mh hast wohl recht. Php ist leider sehr tollerant
was Variablentypen anbelangt, sonst h?tte ich deine
erkl?rung einfach ma versucht mit einem intecher
statt mit einem String auszuf?hren.
So wird das Ergebnis aber h?cht wahrscheinlich
nicht korrekt sein. Das k?nnte ja jemand in c++
Ausprobieren.
Du hast doch gesagt, dass du (erst seit kurzem???) php lernst. Warum wagst du dich schon an eine dowhile schleife? die hab ich bis jetzt noch nie gebracht!!!
versuch lieber mal die For schleife
also:
for($z?hler=1;$z?hler!=20;$z?hler++)
{ echo "$z?hler" \n; }
die Ausgabe w?re alle Zahlen bis 20 untereinander!
Beitrag ge?ndert am 27.01.2006 20:08 von andifr -
Du hast doch gesagt, dass du (erst seit kurzem???) php lernst. Warum wagst du dich schon an eine dowhile schleife? die hab ich bis jetzt noch nie gebracht!!!
Weil ich PHP mit MySQL f?r Dummies lerne und da wurde das angesprochen. Ich w?rde das auch nicht unbedingt verwenden, aber ist schon eine sch?ne sache sowas... eine art prozedur in php :). habe zuletzt nur in Turbo Pascal programmiert, daher nenne ich das eine art von prozedur ;).
----
Also, wenn ich das jetzt richtig verstanden habe, dient das in meinem Beispiel nur der ?bersichtskeithalber und der "Einfachheit" (das wort gibt es nicht, ich wei?)...
ich k?nnte mir n?mlich auch noch eine zweite variable nehmen mit:
$zaehler2 = $zaehler * $zaehler
...
und im code:
echo (" blabla $zaehler2 blabla ");
und sauber:
echo (" blabla ".$zaehler*$zaehler." blabla ");
Habe ich das nun richtig verstanden? -
jupp... auch wenn dein Beispiel etwas unpraktisch ist
Ich h?tte auch schreiben k?nnen
$strUser = "Dreamweaver"; $strDate = "27.01.2006"; echo 'Das Lima-City Mitglied <strong>'; echo $strUser; echo '</strong> hat sich das letzte mal am <strong>' echo $strDate; echo '</strong> angemeldet';
aber das finde ich nicht so sch?n... aber wer sagt denn, dass ich etwas sofort auf dem Bildschirm ausgeben will
mit meinem Beispiel eben h?tte ich die Daten erst aufbereiten k?nnen und dann wenn ich es brauche ausgeben...
$strTest .= $strUser
heisst nichts anderes als
$strTest = $strTest . $strUser
in Basic kann man den Punkt durch ein + ersetzen, aber ob das hier geht?
Auf deutsch = die erste Variable wird mit der zweiten zusammengef?hrt -
gut, frage beantwortet. danke :)
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage