Witam, mam klasę Settings, w niej mam wszystkie ważne zmienne, głownie chodzi mi o zmienna odnośnie płatności, w niej musze sobie obliczać np. prowizję ilosc złoty itp, jak to moge zrobić? Poniżej kod który zwraca błąd ze względu na funkcję floor().
Błąd: Parse error: syntax error, unexpected '(', expecting ',' or ';' in ...
Pyton_000
3.07.2017, 11:09:11
W definicji możesz używać tylko typów skalarnych, żadnych funkcji.
Oblicz to sobie w konstruktorze
MeGusta
3.07.2017, 11:32:53
Nawet jeśli takich obliczeń będzie 20 to wszystko w konstruktorze obliczac? Nie ma lepszego sposobu? Bo będe musiał dla każdej oferty obliczać osobno
nospor
3.07.2017, 11:39:31
Nie wiem co dokladnie ma robic twoja klasa, ale na chwile obecna wyglada na zle zaprojektowana.
Generalnie powinna tam byc metoda np getSmsData() ktora zwroci twoja tablice dla SMS i jesli bedzie potrzeba to doliczyc sobie cos tam bazujac na aktualnych ustawieniach w obiekcie. Przeciez banalne floor to zadne obliczenia i nie zajedzie ci serwera. A nawet jak bedziesz mial naprawde skomplikowane obliczenia to mozesz je wyliczyc raz a wynik zwracac wielokrotnie.
Pyton_000
3.07.2017, 11:40:22
Bo zapewne zabierasz się do tego od dupy strony i nie koniecznie poprawnie... Lepiej napisz co to ma być jak to ma działać itd. bo tu już zaczynamy wchodzić że masz źle zaprojektowany system.
Tomplus
3.07.2017, 16:36:13
Wrzucanie "stałych" do klasy to też zły pomysł.
Powinieneś wysłać tablicę z wartością ID i COINS do klasy np.
new Settings($lista_ustawien);
I następnie w __construct poprzeliczać i dodać nowy klucz NETTO.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.