webForumDet fria alternativet

Anropa funktion

11 svar · 413 visningar · startad av LAMP

LAMPMedlem sedan mars 2002777 inlägg
#1

Jag har funktionen nedan som jag vill köra på variabeln $artikel. Jag skriver:

print Parser($artikel);

Men får då bara ut Parser(..allt innehåll...), hur göra för att funktionen ska köras?

function Parser($artikelText ) {

$artikelText = str_replace( '[ b]' , "<b>", $artikelText );
$artikelText = str_replace( '[ /b]', "</b>", $artikelText );
$artikelText = str_replace( '[ B]' , "<b>", $artikelText );
$artikelText = str_replace( '[ /B]', "</b>", $artikelText );

$artikelText = str_replace( '[ i]' , "<i>", $artikelText );
$artikelText = str_replace( '[ /i]', "</i>", $artikelText );
$artikelText = str_replace( '[ I]' , "<i>", $artikelText );
$artikelText = str_replace( '[ /I]', "</i>", $artikelText );

$artikelText = str_replace( '[ u]' , "<u>", $artikelText );
$artikelText = str_replace( '[ /u]', "</u>", $artikelText );
$artikelText = str_replace( '[ U]' , "<u>", $artikelText );
$artikelText = str_replace( '[ /U]', "</u>", $artikelText );

return( $artikelText );

}

RED: den ser lite knasig ut för wF tolkar det som forumkod. :(

OlleBoopMedlem sedan feb. 20001 861 inlägg
#2

Prova att anropa med

Parser($artikel);

Och ändra sista raden i funktionen till:

print( $artikelText );
LAMPMedlem sedan mars 2002777 inlägg
#3

Tack, det fungerade lysande :D

Men bör man skriva ut i en funktion?

SPiNMedlem sedan mars 20007 896 inlägg
#4

Nej, åtminstone inte i en sån här typ av funktion. Returnera istället. :)

LAMPMedlem sedan mars 2002777 inlägg
#5

SPiN skrev:

Nej, åtminstone inte i en sån här typ av funktion. Returnera istället. :)

Jag lyckas ej få ut något bra om jag använder return. :(

LAMPMedlem sedan mars 2002777 inlägg
#6

Ingen som vet hur man bär sig åt för att kunna använda return i en funktion?

SPiNMedlem sedan mars 20007 896 inlägg
#7

Du har inte gjort något fel, det är det som är grejjen. ;)
Testa igen. Eller med en enkel funktion, för att se om det fungerar:

function Parse() {
     return "Returnerat från Parse()";
}
echo Parse();
SPiNMedlem sedan mars 20007 896 inlägg
#8

Aha! :i
Det kan vara för att du inte hade några parenteser runt print()!

Testa:

print( Parser( $artikel ) );
DenkanMedlem sedan juni 2002256 inlägg
#9

return $artikelText;

d.v.s inga parenteser kring return-värdet... så kör jag iaf

LAMPMedlem sedan mars 2002777 inlägg
#10

SPiN skrev:

Aha! :i
Det kan vara för att du inte hade några parenteser runt print()!

Testa:

print( Parser( $artikel ) );

SPIN, du slog huvudet på spiken där, Tack! :bire

Tack också till dig Denkan, men det fungerar med paranteser också. Kul att se fler som är aktiva och svarar på trådar, och inte enbart läser dem. :bire

MungoMedlem sedan jan. 2000372 inlägg
#11

Varför använda Print när echo finns?

LAMPMedlem sedan mars 2002777 inlägg
#12

Mungo skrev:

Varför använda Print när echo finns?

För jag gör det lätt för mig, och det går av vana. Eftersom jag använder println i JSP/Servlets.

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