![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 577 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Jak przekazać zmienną z klasy do funkcji?
W folderze classes mam klasę z takim kodem Kod class routClass { ... public function __construct() { ... define('NAME_CONTROLLER', $name_controller); // Jak inaczej przekazac zmienna do funkcji? } } W folderze functions mam funkcje Kod function writeData($value) { global $arrayData; // Czy funkcja z global $arrayData jest ok? $key = NAME_CONTROLLER; // Jak inaczej przekazac zmienna do funkcji? $data = ''; if (isset($arrayData[$key][$value])) { $data = $arrayData[$key][$value]; } else { $data = 'Sorry value not found!'; } echo $data; } |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 577 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Stykasz się z zasięgiem zmiennych wewnątrz funkcji. W view($viewName, $data = []) Mogę przekazać dane poprzez $data[] i tak też robię z innymi danymi, wówczas funkcja jako metoda zadziała w frameworkClass ale nie zmienia to sytuacji i tak dopiero po dodaniu global $arrayDataPages tablica jest ładowana do funkcji/metody alternatywą dla global jest require(data.php) plik w którym jest ta tablica. Czy require() jest tu ok zamiast global? Jeśli ok to pozostała zmienna, static::class to tandeta, więc nie o to chodzi. W pliku routClass.php (wczytującym kontrolery w zależności od adresu strony) mam klasę i kod ze zmienną Kod class routClass { public function __construct() { $name_controller = $this->nameController($url[0]); } } Jak tę zmienną przekazać do pliku kontrolera np. indexController.php (z jednej klasy do drugiej znajdujących się w różnych plikach)? Kod class indexController extends frameworkClass { public function index() { //$html_menu = $this->buildMenu(); $data = ['name_controller' => $name_controller, 'i inne dane dla widoku...']; $this->view("index", $data); } } Wówczas wynik np. z funkcji buildMenu() czyli całe Menu, które przeniosę do frameworkClass jako metodę też mógłbym wrzucić do tablicy $data i wyświetlić w widoku?! If you try walking in my shoes... PHP Info, Please. Kilka tygodni pracy i jest pierwsza strona na autorskim Frameworku: www.s7partner.dbm.org.pl Z waszą pomocą, ale średnio wyszło i chciałbym popracować nad back endem php'em, może damy radę coś jeszcze usprawnić? Tym razem przydałoby się więcej teorii o ile to możliwe bez słów typu rzuć to, powodzenia życzę, nie możliwe... Mam pytania odnośnie kilku wypowiedzi: 1. "Nie możesz użyć normalnie composera i prawidłowego nazewnictwa zgodnie z PSR?" Używam Composera do podstron typu Kontakt, gdzie potrzebuję PHPMailera itp., nie wiem jednak na co potrzebny jest w autorskim Frameworku (co mógłbym tu nim usprawnić)? Standardy PSR są do opanowania, ale jak się do nich zabrać... szybko ? : ) 2. "Rzucić to w diabły i użyć Symfony albo Laravela" Wymienione frameworki są ok, ale to "krowy", samo skopiowanie plików, instalacja Symfony zajmuje stosunkowo bardzo dużo czasu, a strona otwiera się katastrofalnie na typowym serwerze. Potrzebowałem szybkiego frameworka dla stron składających się z kilku/kilkunastu podstron i ten, który napisałem jest do tego celu dobry. Ponadto uruchomienie strony na serwerze zajęło może 10 minut i gotowe. Czy wymienione ciężkie frameworki są w takiej sytuacji pożądane? 3. "Pisząc w ten sposób który nam prezentujesz nabierasz tylko mega złych nawyków." P.S. viking jak widać masz większe wyobrażenie o PHP, więc zostań mentorem, nie krzycz na mnie, że nie tak, a naucz paru rzeczy, abym nabrał dobrych nawyków. Ten post edytował Malinaa 28.12.2020, 20:11:47 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 01:50 |