webForumDet fria alternativet

Pinsam fråga

6 svar · 278 visningar · startad av Webslave

WebslaveMedlem sedan maj 2002647 inlägg
#1

Jag har suttit och kikat runt på wF mm och kom på en sak som min php-bok inte tar upp och det är följande:

function KalasKanon(vad är det för variablar som ska vara här???){
//koda koda koda
}
SPiNMedlem sedan mars 20007 896 inlägg
#2

Det är sånt som du kan skicka till funktionen för att formatera. Ett enkelt exempel:

<?php
function BoldThis( $variableToBold ) {
     $variableToBold = "<b>" . $variableToBold . "</b>";
     return $variableToBold;
}

$text = "SPiN";
$text = BoldThis( $text );
echo $text; // Resulterar i utskriften: <b>SPiN</b>
?>

Vid en funktion som ovan, kopieras värdet på $text till $variableToBold - vilken sedan returneras. Det tar en del minne och extra tid, så istället kan man också använda sig av references, vilket betyder att värdet inte kopieras, utan endast platsen i minnet - värdet som används sen i funktionen är detsamma som utanför. Alltså behöver inget returneras.

<?php
function BoldThis( &$variableToBold ) {
     $variableToBold = "<b>" . $variableToBold . "</b>";
}

$text = "SPiN";
BoldThis( $text );
echo $text; // Resulterar i det samma: <b>SPiN</b>
?>

Du kan också använda dig av global, för att globalisera dina variabler. Det är fult och rekommenderas inte, utan första exemplet är det som bör användas om det inte är en stor och resurskrävande applikation, då bör exempel nummer 2 användas.

<?php
function BoldThis() {
     global $text;
     $text = "<b>" . $text . "</b>";
}

$text = "SPiN";
BoldThis();
echo $text;
?>
WebslaveMedlem sedan maj 2002647 inlägg
#3
<?php
function BoldThis( &$variableToBold ) {
     $variableToBold = "<b>" . $variableToBold . "</b>";
}

$text = "SPiN";
BoldThis( $text );
echo $text; // Resulterar i det samma: <b>SPiN</b>
?>

Men om man istället ska skicka med $text från en länk t.ex måste man väll ändå göra den global... eller ska man lägga den i:

function BoldThis(här?)
SPiNMedlem sedan mars 20007 896 inlägg
#4

Precis! Du skickar den som parameter, kallas det. Allt mellan ( och ) i funktions-deklarationen kallas för parameterlista, vill man ha flera parameters skiljer man dem åt med ett komma:

function BoldThis( $var1, $var2 ) {
...
WebslaveMedlem sedan maj 2002647 inlägg
#5

Ok... då ska jag börjar köra på det... så trött på att göra allt globalt.

Tackar Spin... du, som jag har för mig att jag sagt tidigare, rockar! Kul att du orkar med alla newbie frågor hela tiden... måste kräva rejält med tålamod :)

SPiNMedlem sedan mars 20007 896 inlägg
#6

Ok... då ska jag börjar köra på det... så trött på att göra allt globalt.

Bra, gör det. Globalt suger. :)

Tackar Spin... du, som jag har för mig att jag sagt tidigare, rockar! Kul att du orkar med alla newbie frågor hela tiden... måste kräva rejält med tålamod

:r
Nä, skulle jag inte tycka om att svara på frågor skulle jag inte vara här. Det är kul med PHP, även fast jag inte använder det längre. :)

WebslaveMedlem sedan maj 2002647 inlägg
#7

? Vaffö inte använda PHP?... *gulp* Har du börjat köra .NET eller ASP? GHB eller XTC? :P

129 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)