Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Jak sprawdzić czy funkcja klasowa została wykonana?
dr revuu
post 2.09.2010, 19:56:26
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 1
Dołączył: 21.01.2010

Ostrzeżenie: (0%)
-----


Mam następujący problem. Stworzyłem sobie w klasie funkcję, która dodaje rekordy do bazy danych, a wcześniej obrabia dane. Potrzebuję zasygnalizować w moim skrypcie, czy polecenie zostało wykonane czy nie. Wygląda to mnie więcej tak:

  1. $a = new jakasklasa;
  2. $a->funkcja('atrybut1','atrybut2');
  3.  
  4. //a tutaj chciałbym coś takiejgo
  5. if(ta funkcja powyżej==TRUE)
  6. {
  7. coś tam
  8. }


  1. class jakasklasa {
  2. function funkcja{
  3. //obróbka i dodanie danych do bazy
  4. }
  5. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
bastard13
post 2.09.2010, 20:01:23
Post #2





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

Ostrzeżenie: (0%)
-----


  1. class A {
  2. public function zwracam($param1,$param2)
  3. { //wykonuje działania na przesłanych zmiennych
  4. if(/*wszystko ok*/)
  5. return true;
  6.  
  7. return false; //jak dotarła funkcja tutaj tzn. że coś się nie udało
  8. }
  9. }
  10.  
  11. $obiekt=new A();
  12. if($obiekt->zwracam('atr1','atr2')===true)
  13. { //się wszystko udało
  14. }
  15. else
  16. { //może innym razem:)
  17. }


Ten post edytował bastard13 2.09.2010, 20:01:54


--------------------
Go to the top of the page
+Quote Post
dr revuu
post 2.09.2010, 21:09:35
Post #3





Grupa: Zarejestrowani
Postów: 31
Pomógł: 1
Dołączył: 21.01.2010

Ostrzeżenie: (0%)
-----


W Twoim przykładzie występuje wykonanie funkcji i jednoczesne sprawdzenie, ale tylko i wyłącznie natychmiastowe. Ja chciałem operować na czymś, co wykracza poza funkcję i mogę tego użyć w całym skrypcie (np. zmienna lub stała). Niemniej ten sposób w moim przypadku jest użyteczny w 100% i przy nim pozostanę. Swoją drogą w trakcie eksperymentów również napisałem takiego if'a, ale z racji tego, że wykonało mi funkcję podwójnie (bo myślałem, że to sprawdza tylko, nie wykonuje) to szukałem innego rozwiązania.

Takie pytanie jeszcze, dlaczego przy tworzeniu obiektu przy A jest nawias? Tj. $obiekt->new A()

Dzięki bastard!
Go to the top of the page
+Quote Post
cykus
post 2.09.2010, 21:38:15
Post #4





Grupa: Zarejestrowani
Postów: 4
Pomógł: 1
Dołączył: 5.11.2009

Ostrzeżenie: (0%)
-----


Cytat(dr revuu @ 2.09.2010, 22:09:35 ) *
W Twoim przykładzie występuje wykonanie funkcji i jednoczesne sprawdzenie, ale tylko i wyłącznie natychmiastowe. Ja chciałem operować na czymś, co wykracza poza funkcję i mogę tego użyć w całym skrypcie (np. zmienna lub stała). Niemniej ten sposób w moim przypadku jest użyteczny w 100% i przy nim pozostanę. Swoją drogą w trakcie eksperymentów również napisałem takiego if'a, ale z racji tego, że wykonało mi funkcję podwójnie (bo myślałem, że to sprawdza tylko, nie wykonuje) to szukałem innego rozwiązania.

Takie pytanie jeszcze, dlaczego przy tworzeniu obiektu przy A jest nawias? Tj. $obiekt->new A()

Dzięki bastard!

w nawiasach podajesz argumenty dla konstruktora klasy.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 10:00