BAZA WIEDZY
KURSY
Bazy danych w PHP
Kurs AdvancedAJAX
Kurs ASP
Kurs ASP.NET
Kurs C++
Kurs CSS
Kurs HTML
Kurs HTML drugi
Kurs JavaScript
Kurs MySQL
Kurs PHP
Kurs RSS
Kurs XHTML
Obiekty DOM
MANUALE
CSS1 - W3C
DOM - w budowie
PHP 2005
PHP 2006
Wyrażenia regularne
SHOUTBOX
STAT
Online: 18 | UU: 410
[PHP] Jak napisać prostą funkcję?
22 marzec 2007

Pisanie funkcji w języku PHP to wbrew pozorom nie taka trudna rzecz. Powtarzalne instrukcje, używane wielokrotnie w różnych miejscach, mogą zapisywane być w formie funkcji. Zamiast pisać za każdym razem wiele linijek kodu można taką funkcję każdorazowo dołączać do pliku. Taka struktura bardzo ułatwia pracę bo wiele zadań sprowadzanych jest do jednego "mianownika". W razie chęci rozszerzenia możliwości działania funkcji, wystarczy dokonywać zmian w jednym miejscu.

Funkcja na przykładzie prostych działań matematycznych:

 Przykład:

Kod: php

<?php
function liczenie ($operacja,$a,$b)
{
 if($operacja=="dodaj") $wynik=$a+$b;
 if($operacja=="odejmij") $wynik=$a-$b;
 if($operacja=="pomnoz") $wynik=$a*$b;
 if($operacja=="podziel") $wynik=$a/$b;
 if($operacja=="") $wynik="podaj typ operacji";
 echo "Wynik: ".$wynik."<br />";
}
liczenie("dodaj", 1, 5); // wypisze na ekranie 6
liczenie("odejmij", 7, 5); // wypisze na ekranie 2
liczenie("pomnoz", 3, 5); // wypisze na ekranie 15
liczenie("podziel", 10, 4); // wypisze na ekranie 2,5
?>

Najpierw deklaryjemy funkcję o nazwie liczenie. Funkcja będzie zależna od trzech argumentów: $operacja (jaka operacja arytmetyczna nas interesuje), $a(pierwsza liczba), $b(druga liczba). Funkcja sprawdza w pierwszej kolejności co podstawisz za zmienną $operacja. Czyli w rzeczywistości jakie działanie arytmetyczne chcesz wykonać na dwóch liczbach ukrytych w zmiennych $a i $b. Pierwsza instrukcja warunkowa (if), sprawdza czy pod zmienną $operacja podstawiona została wartość, a razcej ciąg znaków równy dodaj. Jeśli ten warunek jest spełniony, pod zmienną $wynik podstawiona jest właśnie taka operacja, czyli $a+$b. W analogiczny sposób sprawdzana jest czy $operacja to odejmij, pomnoz, podziel. Jeżeli pod zmienną $operacja nie podstawi się żadnej wartości, powinniśmy na ekranie otrzymać komunikat: "podaj typ operacji".

Powyżej opisana została funkcja. Odwołanie się do niej, czyli uruchomienie jej polega na umieszczeniu w pliku, w którym taka funkcja się znajduje lub jest do niego dołączana, w dowolnym miejscu kodu źródłowego strony jej nazwy i argumentów. W naszym przykładzie nazwa to liczenie, a argumenty to kolejno (rodzaj operacji arytmetycznej, cyfra 1, cyfra 2). Czyli np. liczenie(odejmij, 6, 3);

Autor: Adam Suchowski

Dodaj komentarz









Komentarze
5 odpowiedzi
admin
11 marzec 2009, godz. 11:54

Fakt, brakowało apostrofów czy cudzysłowów. Co do zapisu, funkcja ma charakter czysto poglądowy. Może nawet zamiast instrukcji switch lepiej byłoby zastosować tablicę, a może nawet klasę, konstruktor plus może jeszcze rozróżnienie zasięgu, ale to porada dla początkujących.

Fifi
11 marzec 2009, godz. 9:42

O “ifach” już powiedzieli poprzednicy, że lepiej je zastąpić swichami.

Dodatkowo: liczenie(dodaj, 1, 5); // wypisze na ekranie 6

Ja bym powiedział, że wywali błąd. ;d

Zapomniałeś chyba o apostrofach kolego. Poza tym nie lepiej zamiast echo w funkcji użyć return $wynik ?

14 październik 2008, godz. 1:48

Po pierwsze lepiej i prościej jest na shitchach, po drugie ostatnia komenda powinna być jako else, lub default. gdyż jeśli ktoś by błędnie wpisał, nie wykonała by się żadna z powyższych opcji

php
11 październik 2008, godz. 12:36

latwiej by bylo w switch zamiast tylu ifow.

Administrator
9 marzec 2008, godz. 6:18

Test

 
 
Copyright © 2006-2011 egrafik.pl | Kontakt | Reklama | Projekty domów
jocker