Variable vervielfältigen
Lucky
- php
Hi,
ich steige seit kurzem von Perl auf PHP um. Hmm..bis jetzt ist ja alles ganz nett, aber jetzt bin ich an einem wohl ganz einfachen Ding hängen geblieben und ich komm einfach nimmer weiter.
Bei Perl kann ich den Inhalt einer Variable ganz einfach verfielfältigen, in dem ich einfach ein x nn dahinter hänge.
$var = "<img bla...>" x 5;
Gibts sowas in PHP auch?? Oder wie kann ich das in PHP einfach lösen, ohne das ich gross ne Schleife einbau.
Oder muss ich mir dafür vielleicht ne funktion basteln??
Vielen Dank im Vorraus.. vielleicht kann mir ja wer dabei helfen.
Lucky
Hallo Freunde des gehobenen Forumsgenusses,
$var = "<img bla...>" x 5;
Gibts sowas in PHP auch?? Oder wie kann ich das in PHP einfach lösen, ohne das ich gross ne Schleife einbau.
Du suchst das Handbuch.
Gruß
Alexander Brock
Hallo Alexander,
vielen Dank.
str_repeat("blah", 8)
Na super...genau das hab ich jetzt drei Stunden gesucht.
Vielen Dank nochma...
Lucky
Hi,
Hallo Alexander,
vielen Dank.
str_repeat("blah", 8)
Na super...genau das hab ich jetzt drei Stunden gesucht.
angenommen, du wüsstest nicht, dass es die Funktion gibt, wieso brauchst du drei Stunden, um dir
function repeat($input,$n)
{
$text = "";
for($i=0;$i<$n;$i++) $text .= $input;
return($text);
}
zu schreiben?
Schöne Grüße
Julian
echo $begrüßung;
Eine kleine Anmerkung:
return($text);
return ist keine Funktion. Eine Klammerung des Rückgabewertes erzeugt unnötigerweise einen Ausdruck. Die Klammern wirken an der Stelle beispielsweise wie in einer Formel: $a = $b * ($c + $d);
In manchen Fällen ist das Klammern sogar kontraproduktiv. Beispielsweise wenn eine Referenz zurückgegeben werden soll.
function &foo() {
$bar = 42;
return $bar;
}
So wird eine Referenz auf $bar zurückgegeben. Klammert man $bar im return-Statement müsste stattdessen eine Referenz auf einen Ausdruck zurückgegeben werden. Das wird seit PHP 4.4.0 und (wenn ich das recht in Erinnerung habe) 5.0.4 mit einer Notice geahndet.
echo "$verabschiedung $name";
Hi,
Eine kleine Anmerkung:
return($text);
return ist keine Funktion. Eine Klammerung des Rückgabewertes erzeugt unnötigerweise einen Ausdruck. Die Klammern wirken an der Stelle beispielsweise wie in einer Formel: $a = $b * ($c + $d);
ich wusste das nicht und du hast wohl Recht. Trotzdem werde ich Klammern, solange es nicht schadet. Ich klammere auch bei echo. Ich finde es furchtbar inkonsequent, dass bei echo und return normalerweise keine Klammern gesetzt werden.
Schöne Grüße
Julian
Hallo,
Trotzdem werde ich Klammern, solange es nicht schadet. Ich klammere auch bei echo. Ich finde es furchtbar inkonsequent, dass bei echo und return normalerweise keine Klammern gesetzt werden.
Ja, das sehe ich auch so. Zumal return ein Sprachkonstrukt ist, das ich mit while oder if in einer Liga sehe, deren Argumente ja ebenfalls geklammert werden _müssen_. Der Ordnung halber gehört das bei return IMHO auch gemacht.
Ebenso verwende ich den Pseudo-Operator typeof _immer_ mit geklammertem Argument, da er im Sinne einer Funktion benutzt wird und deshalb auch so behandelt werden sollte.
Oft wird der Code dadurch auch übersichtlicher, also leichter zu lesen.
So long,
Martin
echo $begrüßung;
return ist keine Funktion. Eine Klammerung des Rückgabewertes erzeugt unnötigerweise einen Ausdruck. Die Klammern wirken an der Stelle beispielsweise wie in einer Formel: $a = $b * ($c + $d);
ich wusste das nicht und du hast wohl Recht. Trotzdem werde ich Klammern, solange es nicht schadet. Ich klammere auch bei echo. Ich finde es furchtbar inkonsequent, dass bei echo und return normalerweise keine Klammern gesetzt werden.
Nach den Parametern von echo, return, include, break (Setzt du da auch Klammern? Wenn nein, warum eigentlich nicht? Ist das nicht inkonsequent?) folgt ja auch ein Semikolon und das Statement ist damit beendet. Nach if, for, while folgt direkt nach der Bedingung bzw. den Schleifenparametern ein in Abhängigkeit auszuführendes Statement, weswegen die Bedingung durch die Klammerung eindeutig von diesem abgegrenzt wird.
Ich persönlich sehe keinen Grund, der Optik willen technischen Unsinn zu verzapfen.
Sauber formatierter Code wäre zwar nicht technisch nötig, da dies aber das Lesen und Erfassen des Codes ungemein erleichtert, bin ich stark dafür. Jedoch sollte sich beim Programmieren Konsequenz zuerst an technischen Gesichtspunkten orientieren und danach erst an ästhetischen. Dann kommt man auch nicht in Konflikte, wenn man seine Konsequenz wegen technischer Notwendigkeit vernachlässigen muss.
echo "$verabschiedung $name";
P.S. "Mein Programm ist zwar fehlerhaft, aber sieh mal, mein Quelltext ist 1A formatiert." :-)
Hi,
im Normalfall resultiert die Klammerung bei return und echo in keinen Problemen, somit ist hier die bessere Lesbarkeit und die konsequente Schreibweise vorzuziehen.
Schöne Grüße
Julian