Avatar billede 7th Praktikant
11. september 2003 - 09:46 Der er 20 kommentarer og
3 løsninger

Function tutorials

Jeg søger links til artikler/eksempler/tutorials på hvordan man lave sine egne functions, og benytter dem. De må meget gerne være på dansk.

http://www.webcafe.dk/artikler/php/funktioner/ behøver I ikke linke til...
Avatar billede 7th Praktikant
11. september 2003 - 09:48 #1
http://dk2.php.net/manual/en/functions.php har jeg iøvrigt også læst.
Avatar billede jensgram Nybegynder
11. september 2003 - 09:56 #2
Jamen... Du starter med at finde en situation, der måske ofte skal gentages. Derefter smider du denne rutine i en function {}, og så er dén klaret ;)

En simpel kunne være denne:

function vis_fejl($fejl)
{
    header("location: http://www.domæne.dk/error.php?e=" . $fejl);
    exit;
}

ex:

vis_fejl(404);
Avatar billede 7th Praktikant
11. september 2003 - 10:13 #3
Det må gerne være på et lidt højere niveau mr_noname :o)
Avatar billede fangel Nybegynder
11. september 2003 - 11:10 #4
hvad vil du gerne kunne? meget svært at forklare ALT

Morten
Avatar billede jensgram Nybegynder
11. september 2003 - 11:23 #5
7th > Hehe, ja det tænkte jeg nok, men spm er lidt diffust ;)
Avatar billede 7th Praktikant
11. september 2003 - 12:07 #6
dea_pg > det er lidt svært at svare på når jeg ikke har ret meget kendskab til functions, men hvis I smed et par links eller tre, så kan jeg jo kommentere, om det er det jeg søger. Det må gerne være i stil med http://www.webcafe.dk/artikler/php/funktioner/ men lidt mere avanceret.
Avatar billede fangel Nybegynder
11. september 2003 - 12:13 #7
funktioner er jo bare en måde at gruppere funktions kald så man kun skal bruge en linie på at kalde dem... fx som mr_nonames...

man laver altså parametere som dette

function foo($bar){
...
}

du kan så lave flere ved at adskille dem med ,-er

function foobar($foo, $bar){
...
}

du kan lave parametre som ikke behøves blive udfyldt

function foobar($foo = 'bar'){
...
}

hvis den bliver kaldt foobar(); vil $foo have værdien 'bar', ellers vil den tage værdien fra parmetret

---

hjalp det lidt?

Morten
Avatar billede jensgram Nybegynder
11. september 2003 - 12:20 #8
Udover parametre, som Morten omtaler, er "return" også et nødvendigt begreb:

ex:

function test($input)
{
    if ($input == 'OK') {
        return true;
    } else {
        return false;
    }
}


if (test('OK') == true) {
    print "Det var da fjong!";
}
Avatar billede jensgram Nybegynder
11. september 2003 - 12:21 #9
Det skal så lige siges, at ovenstående funktion kan laves simplere, men den er meget illustrativ...

function test($input)
{
    return ($input == 'OK' ? true : false);
}
Avatar billede baldi3 Nybegynder
11. september 2003 - 12:41 #10
http://dk2.php.net/manual/en/functions.php

Dér kan man altid kigge :o)
Avatar billede fangel Nybegynder
11. september 2003 - 12:46 #11
baldi => har du lagt mærke til at i _første_ kommentar, skriver han at han HAR læst den!

Morten
Avatar billede 7th Praktikant
11. september 2003 - 13:11 #12
Det er ok eksempler og god forklaring, men jeg er ude efter nogle lidt mere komplicerede funktioner jeg kan sidde og lure af, stille spørgsmål til, og få inspiration fra. Links vil jeg derfor gerne have. Så bliver I også fri for at sidde og lave små eksempler til mig :o)
Avatar billede baldi3 Nybegynder
11. september 2003 - 13:19 #13
dea_pg, nej det gjorde jeg ikke :)

7th, der er ikke så meget hokus pokus ved funktioner. De er ikke anderledes end alle andre ting man kan i php, men de er der for at man slipper for at gentage kode.
Jeg har f.eks. på et site lavet en funktion til at tjekke om man har rettigheder til en specifik side. Så tjekker den igennem, og giver svar.
Man kan bruge funktioner til 2 ting generelt:
Skrive kode ud for en.
Validere ting.

Ellers så er det bare at programmere, og hvis man synes at man godt kunne automatisere lidt ved at lave det i en funktion, så gør man det. Og så har man mindre kode :o)

Man laver selvfølgelig en samling af funktioner, og requiere den fil i sine .php dokumenter.
Avatar billede fangel Nybegynder
11. september 2003 - 13:29 #14
du kan se nogle funktioner jeg har lavet gennem tiden her:

http://mfa.ath.cx/LIB/

Morten
Avatar billede 7th Praktikant
11. september 2003 - 13:42 #15
Se det var noget jeg kunne sidde og kigge lidt på. Lige et spørgsmål. Må man for eksempel definere parametre i en function således.

function funktionsnavn($abc , $_POST['123'])
eller skal man sige
function funktionsnavn($abc , $def=$_POST['123'])
eller er det forkert at bruge $_GET og $_POST?
Avatar billede fangel Nybegynder
11. september 2003 - 14:42 #16
$_* er jo globale, så der er ingen grund til at køre disse gennem parametrene

Morten
Avatar billede 7th Praktikant
11. september 2003 - 20:01 #17
OK tak. Indtil videre har jeg fået det jeg søgte omkring functions, så tak for hjælpen.

Hvis der er nogen som stadigvæk har lyst til at hjælpe kunne jeg også godt bruge nogle links til artikler/eksempler/tutorials omkring classes. Indtil videre har jeg fundet http://dk2.php.net/manual/en/language.oop.php og http://www.udvikleren.dk/article.php?aid=147
Avatar billede 7th Praktikant
11. september 2003 - 20:08 #18
P.S. dea_pg og mr_noname må gerne lægge et svar.
Avatar billede jensgram Nybegynder
12. september 2003 - 00:46 #19
Det vil jeg så gøre.

Hvis du gerne vil lure på nogle funktioner, så kig på kildekoden til projekter som PHPMyAdmin, PostNuke mm. Der er rod til alle!
Avatar billede fangel Nybegynder
12. september 2003 - 09:16 #20
phpbuilder.net har også en masse gode artikler

Morten
Avatar billede 7th Praktikant
12. september 2003 - 11:39 #21
dea_pg nu håber jeg ikke du fjerner http://mfa.ath.cx/LIB/ lige med det samme.
Avatar billede fangel Nybegynder
12. september 2003 - 11:50 #22
gør jeg heller ikke - den virker ikke når min computer kører altså hverdage fra 14-16 til 22

Morten
Avatar billede fangel Nybegynder
12. september 2003 - 12:01 #23
stavefejl er gratis - virker kun når min computer kører ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester