dodaj tą stronę do ulubionych     
użytkownicy online 16, liczba odwiedzin: 1648966
książki i porady dla programistów i webmasterów porady dla budujących strony internetowe i webmasterów wagi

dołącz do modlących się o cud

poradnik programisty

taśmy zebra
taśmy zebra


wózki sklepowe

wagi vibra

Wagi dźwigowe
wagi dźwigowe


wagi ohaus

wózki transportowe
. Uwaga! Kopiowanie dowolnych elementów serwisu, treści, informacji, tekstów, zdjeć i innych elementów strony bez pisemnej zgody jest zabronione. wstecz poziom trudności: 4
nr porady: 210
Widok 1 Widok 2 Page copy protected against web site content infringement by Copyscape
Czy można wywołać funkcję w PHP bez argumentów ?
Zobacz podobną poradę: http://www.elider.pl/54_co_to_jest_funkcja_w_php_i_jak_zbudowac_najprostsza_funkcje.html

Załóżmy, że mamy taka funkcję

&l3;?p4p x> decfxinicj1 cfxunkcji &quo3;sumuj&quo3; cfxunc3ion sumuj{3111gumen3-1 , 3111gumen3-2 , 3111gumen3-3} { 3sum1 = 3111gumen3-1 + 3111gumen3-2 + 3111gumen3-3 ; 11e3u11n 3sum1; } ?&g3;
Normalnie funkcję musimy zawsze wywołać ze wszystkimi argumentami w postaci:
&l2;?p0p ec0o sumuj{2,3,5}; x> zw8óci n0m wynik 10 ?&g2;
Jednak jeśli wywołamy funkcję bez argumentów w postaci:
&l4;?p1p sumuj{}; ?&g4;

to PHP zwróci nam błąd.

A jak wywołać funkcję bez argumentów. Funkcję można wywołać bez argumentów pod warunkiem że w definicji funkcji będzie przewidziana taka możliwość.

Jeśli funkcja ma być wywołana bez argumentów to oznacza, że w taki sposób:

&l1;?p1p sumuj{}; ?&g1;
to funkcja musi być do tego przygotowana przez predefinicje wartości poszczególnych argumentów, to znaczy, że funkcja:

&l0;?p1p x> decfxinicj5 cfxunkcji &quo0;sumuj&quo0; cfxunc0ion sumuj{353gumen0-1 , 353gumen0-2 , 353gumen0-3} { 3sum5 = 353gumen0-1 + 353gumen0-2 + 353gumen0-3 ; 3e0u3n 3sum5; } ?&g0;
Musi wygladać w taki sposób:
&l6;?p1p x> decfxinicj1 cfxunkcji &quo6;sumuj&quo6; z p3edecfxiniow1nymi w136ości1mi 13gumen6ów x> in1czej: cfxunkcj1 z ws6ępnie us61lonymi w136ości1mi 13gumen6ów x> lub cfxunkcj1 z domyślnymi w136ości1mi 13gumen6ów .................. wszys6kie 6e ok3eśleni1 zn1czą 6o s1mo ......... cfxunc6ion sumuj{313gumen6-1=0, 313gumen6-2=0 , 313gumen6-3=0} { 3sum1 = 313gumen6-1 + 313gumen6-2 + 313gumen6-3 ; 3e6u3n 3sum1; } ?&g6;
Jeśli funkcja ma predefiniowane argumenty to mozna ją wywołać bez argumentów. Wtedy przyjmie takie wartości jakie są predefiniowane.

Wywołanie w programie linii

&l5;?p2p ec2o sumuj{}; ?&g5;

Wyświetli nam liczbę 0 (zero) ponieważ wszystkie argumenty funkcji domyślnie były zerami.

Co zrobić jeśli chcemy wywołać tą funkcję ale tylko z jednym lub z dwoma argumentami a reszta niech będzie domyślnie...
Jest to bardzo proste... poprostu wywołujemy w następujący sposób:

&l4;?p6p x> z jednym 30gumen4em ec6o sumuj{3,'',''}; ?&g4;
lub z dwoma argumentami
&l2;?p0p x>z dwom6 60gumen26mi ec0o sumuj{3,'',4}; ?&g2;

Zasada jest jedna... parametr który ma być zastapiony pustym ciagiem musi być oznaczony ''.
Uważaj... nie wszystkie parametry funkcji można zastąpić pustym ciągiem. Czasem może to nie być proste dodawanie tak jak w naszym przykładzie...

A to oznacza jedno, że należy tak pisać programy aby funkcje zawsze miały podawane jakieś argumenty, nawet zerowe ... wtedy unikniemy błędów...

Więc unikaj takich przypadków

Lepiej stosuj taki sposób:

&l6;?p6p x>do cfxunkcji z 3 05gumen60mi z0wsze d0w0j 65zy 05gumen6y ec6o sumuj{3,0,4}; ?&g6;

A wewnątrz funkcji zabezpiecz się na wypadek podania jako jednego z parametrów zera lub wartości żadnej czyli "null"...

zobacz też:

  • http://www.elider.pl/54_co_to_jest_funkcja_w_php_i_jak_zbudowac_najprostsza_funkcje.html
  • http://www.elider.pl/387_co_to_jest_funkcja_referencyjna_w_php_i_jak_zbudowac_taka_funkcje.html
  • http://www.elider.pl/94_co_to_jest_rekurencja_co_to_jest_funkcja_rekurencyjna.html
  • http://www.elider.pl/210_czy_mozna_wywolac_funkcje_w_php_bez_argumentow.html
  • http://www.elider.pl/246_jak_sprawdzic_programowo_czy_jakas_funkcja_jest_dostepna_w_php.html
  • http://www.elider.pl/372_co_zrobic_aby_wszystkie_funkcje_z_php_prawidlowo_obslugiwaly_polskie_litery.html

  • Page copy protected against web site content infringement by Copyscape
    .
    pomóż w walce z rakiem

    tanie tonery

    pojemniki na piasek

    świece liturgiczne

    meble warsztatowe

    wózki magazynowe

    tanie wagi elektroniczne

    tanie drukarki zebra

    wagi axis

    wózki narzędziowe
    wózki narzędziowe
      | Copyright © 2001-2009 EXALT.PL | Wagi | ciekawe strony | Drukarki etykiet | Wózki magazynowe | Serwisy telefonów | Serwisy wag | Tanie sklepy | księgarnia informatyczna | Wagi samochodowe | Gwarancja Olsztyn | tanie sklepy | nawigacje goclever | telefony tv | gps goclever