Korzystając z tej strony zgadzasz się z polityką prywatności i regulaminem.
Akceptuj
WebInside.plWebInside.plWebInside.pl
  • Aktualności
  • Technologie
  • WWW
  • E-marketing
  • AI
  • Poradniki
  • e(Biznes)
Szukaj
  • Kontakt
  • Forum
WebInside.pl © 2023.
Czytasz: Zmienne jako nazwy w PHP
Udostępnij
Zaloguj się
Powiadomienia
Aa
WebInside.plWebInside.pl
Aa
Szukaj
  • Strona główna
  • Aktualności
  • Technologie webowe
  • Publicystyka
  • E-marketing
  • Poradniki
  • AI
  • Technologie
  • Artykuły partnerskie
  • Więcej
    • Kontakt
    • Mapa strony
Masz już konto? Zaloguj się
  • Aktualności
  • Technologie
  • WWW
  • E-marketing
  • AI
  • Poradniki
  • e(Biznes)
WebInside.pl © 2023.
WebInside.pl > Technologie webowe > Zmienne jako nazwy w PHP
Technologie webowe

Zmienne jako nazwy w PHP

WebInside.pl
Ostatnia aktualizacja: 27.07.2003
WebInside.pl
Udostępnij
Udostępnij

Co prawda PHP nie pozwala zaszaleć jeśli chodzi o dynamiczny kod, ale jedna w jakimś stopniu jest to możliwe. Postaram się opowiedzieć o jednym aspekcie dynamiki kodu w PHP, mianowicie o wykorzystaniu zmiennych jako nazw.

Zawartość
Nazywanie zmiennych zmiennymi:Zmienne nazwy funkcji:Zmienne nazwy obiektów:Tablice:

Co prawda PHP nie pozwala zaszaleć jeśli chodzi o dynamiczny kod, ale jedna w jakimś stopniu jest to możliwe. Postaram się opowiedzieć o jednym aspekcie dynamiki kodu w PHP, mianowicie o wykorzystaniu zmiennych.

Zmienne w PHP – podobnie jak i w innych językach – to podstawa. W PHP można je wykorzystać np. do nazywania innych zmiennych, do wywoływania funkcji i wywoływania obiektów itp. Ja jednak skupię się na tych trzech zagadnieniach.

Nazywanie zmiennych zmiennymi:

W trakcie pisania programu, może zajść potrzeba zainicjowania zmiennej, której nazwa będzie zależna od innych czynników podczas wykonywania programu. Chcemy na przykład przy pomocy jednej zmiennej przebrnąć przez dwa poziomy instrukcji warunkowych, np. piszemy skrypt który ma wyświetlić powitanie, w zależności od płci i wieku. Jako nazwę zmiennej przyjmiemy płeć, a wartość wiek. W zależności od wieku wyświetlimy komunikat witam, lub dzień dobry, a w zależności od płci pana lub panią.

<?php
$plec = 'mezczyzna’;
$$plec = 40;

Do zmiennej płeć przypisaliśmy wartość 'mezczyzna’, zauważ podwójny znak dolara, oznacza ze nowa zmienna będzie nazywała się tak jak wartość zmiennej $plec, w tym wypadku 'mezczyzna’. Następnie do nowej zmiennej $mezczyzna przypisujemy wartość 40 jako wiek. Teraz jeżeli zależy nam na pamięci możemy usunąć zmienną $plec z pamięci:

unset($plec);

dalej mamy dwie instrukcje warunkowe, które sprawdzają płeć poprzez sprawdzenie czy dana zmienna istnieje:

if($mezczyzna) {
if ($mezczyzna < 30) {
echo „witam Pana”;
} else {
echo „dzień dobry Panu”;
}
if($kobieta) {
if ($kobieta < 30) {
echo „Witam Panią”;
} else {
echo „dzień dobry Pani”;
}
?>

Nie jest to może najlepszy przykład, ale oddaje sens sytuacji.

Można oczywiście nazwać zmienne dwoma zmiennymi, trzeba do tego użyć konkatenacji i nawiasów sześciennych, chcemy na przykład nazwać zmienną zmiennymi $imie i $nazwisko, zrobimy to tak:

${$imie . $nazwisko} = 'jakiś człowiek’;

w ten sposób możemy nazywać zmienne jak nam się podoba, może się przydać w wypadku, gdy wiemy jakie mogą wystąpić zmienne, wiemy jak mogą się nazywać, ale nie wiemy ile ich będzie potrzebnych, wtedy możemy je inicjować poprzez pętle na podstawie wprowadzonych danych. Mamy na przykład dane z formularza w tablicy, teraz chcemy w zależności od tych danych stworzyć zmienne i przypisać im potrzebne wartości, możemy to zrobić w taki sposób:

<?php
foreach( $dane AS $index => $wartosc ) {
${$wartosc. $tablica[$wartosc]} = $tablica[$wartosc];
}
?>

w ten oto sposób budujemy zmienne na podstawie wprowadzonych wartości i wcześniej określonych z tablicy. Nie jest to jedyne wyjście z takiej sytuacji, ale na nasze potrzeby jest w sam raz, w końcu o to chodziło. Jeszcze jedna sprawa na koniec, jeżeli używasz zmiennej do nazwania zmiennej, to nawet jeżeli jest to jedna zmienna, użyj nawiasów sześciennych, po to aby jeżeli ktoś kto będzie kiedyś czytał twój kod od razu połapał się o co chodzi. Czyli zapisuj to tak:

${$zmienna} = „jakaś wartosc”;

w ten sposób od razu widać o co chodzi…

Zmienne nazwy funkcji:

Ten temat jest bardzo prosty. Chodzi mianowicie o to że możesz wykorzystać wartość zmiennej do wywołania odpowiedniej funkcji. Dla przykładu możemy założyć że piszesz skrypt downloadu z możliwością uploadu. w zależności od akcji chcesz uruchomić inną funkcję. Masz dwie funkcje: download i upload. W pewnym momencie skryptu musisz zdecydować którą z nich uruchomić, można to zrobić w ten sposób:

<?php

//kod skryptu

$akcja( $plik );

//dalszy kod skryptu

?>

w zależności od zawartości zmiennej $akcja (download lub upload), plik zostanie ściągnięty lub załadowany na serwer.

Zmienne nazwy obiektów:

Tu sprawa jest podobnie prosta jak w nazwach funkcji. Po prostu nazwę obiektu możemy również przechowywać w zmiennej. Mamy dla przykładu serwis o grach. W zależności od tego na stronę której gry wchodzimy (gra akcji, przygodówka, strategia), definiujemy odpowiedni obiekt. Przykładowy kod może wyglądać tak:

<?php

//kod skryptu

$aktualnaGra = new $rodzaj( $nazwaGry );

//dalszy kod skryptu

?>

w tym przypadku każda klasa posiada konstruktor który przyjmuje jako parametr nazwę gry i w związku z nią nawiązuje dalsze akcje, ale nie o to chodziło. Chodzi o to aby było słowo kluczowe 'new’ przed nazwą zmiennej, wtedy będzie wszystko wiadomo, czyli konstrukcja taka jest również poprawna:

<?php

//kod skryptu

$aktualnaGra = new $rodzaj;

//dalszy kod skryptu

?>

w wypadku gdy klasa korzysta np. ze zmiennych globalnych.

Tablice:

Jest jedna sprawa którą trzeba poruszyć co do nazw. Jeżeli w grę wchodzą tablice, to musimy sprecyzować czy chodzi nam o zmienną nazwę tablicy, czy o element tablicy jako nazwę zmiennej. Jeżeli używamy zmiennej jako nazwy tablicy, robimy to w ten sposób:

${$zmienna}[5] = 'jakaś wartość’;

Jeżeli natomiast chcemy użyć elementu tablicy jako nazwy to robimy to w ten sposób:

${$tablica[5]} = 'jakaś wartość’;

Pozostawiam wam do sprawdzenia jaki efekt daje taki zapis:

$$tablica[5] = 'jakaś wartość’;

To tyle jeśli chodzi o temat zmiennych jako nazw…

Może Cię zainteresować

Jak wybrać agencję do tworzenia strony internetowej w Warszawie?

Lovable – recenzja po 3 miesiącach. Cennik, opinie, kredyty, limity

Stanowisko web developera w 2026: co naprawdę przyspiesza pracę — i za co nie warto przepłacać

AI kontra klasyczne kreatory stron: kto tu naprawdę wygrywa?

Jak wybrać i zarejestrować domenę? Praktyczny przewodnik dla firm i osób prywatnych

WebInside.pl 2003-07-27 2003-07-27
Udostępnij ten artykuł
Facebook Twitter Kopiuj link Wydrukuj
Udostępnij
Poprzedni artykuł Problemy z czcionkami we Flashu
Następny artykuł Jak reklamować stronę?
Zostaw komentarz lub opinię

Dodaj komentarz Anuluj pisanie odpowiedzi

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *

Najnowsze artykuły

Jak zwiększyć rozpoznawalność marki w całym mieście dzięki reklamie na tramwajach
E-marketing
person holding black iphone 4
Newsletter w małym sklepie internetowym. Jak zacząć, żeby pierwszy mail nie wylądował w spamie
E-marketing
Jak wybrać agencję do tworzenia strony internetowej w Warszawie?
Technologie webowe
person sitting while using laptop computer and green stethoscope near
Badania profilaktyczne w Warszawie – jaki pakiet zrobić raz w roku i gdzie się umówić
Artykuły partnerskie
Dlaczego skuteczność reklamy zależy również od tego, co dzieje się na stronie?
E-marketing
Lovable – recenzja po 3 miesiącach. Cennik, opinie, kredyty, limity
Technologie webowe
A smartwatch with a dark textured band and a colorful app icon display
Smartwatch jak mały komputer – dlaczego naprawa Apple Watch wymaga dziś specjalistycznej technologii?
Poradniki
Stanowisko web developera w 2026: co naprawdę przyspiesza pracę — i za co nie warto przepłacać
Technologie webowe
Close-up of gold and silver cryptocurrency coins on a digital trading chart.
Bybit po ataku za 1,5 miliarda dolarów: co giełda zmieniła i co sprawdzisz sam
Artykuły partnerskie
Odnowiony iPhone jako telefon testowy – dlaczego osoby z branży IT sięgają po refurbished zamiast nowego?
Artykuły partnerskie
banner
Chcesz umieścić swoją reklamę w portalu WebInside.pl?
Skontaktuj się z nami, a zaproponujemy interesujące formy reklamy.
Skontaktuj się

Inne polecane artykuły

Technologie webowe

Jak wybrać agencję do tworzenia strony internetowej w Warszawie?

3 min czytania

Lovable – recenzja po 3 miesiącach. Cennik, opinie, kredyty, limity

15 min czytania
Technologie webowe

Stanowisko web developera w 2026: co naprawdę przyspiesza pracę — i za co nie warto przepłacać

7 min czytania
a computer screen with the words the easy way to build marketplaces
Technologie webowe

AI kontra klasyczne kreatory stron: kto tu naprawdę wygrywa?

5 min czytania
Technologie webowe

Jak wybrać i zarejestrować domenę? Praktyczny przewodnik dla firm i osób prywatnych

5 min czytania
Technologie webowe

Komentarze w CSS – jak dodawać i do czego służą? Przykłady użycia

17 min czytania
Technologie webowe

Co to jest REST API i na jakich zasadach działa? Przewodnik dla początkujących

21 min czytania
Technologie webowe

Marginesy i dopełnienie w CSS – czym się różnią właściwości margin i padding?

17 min czytania
//

WebInside.pl – portal technologiczny. Aktualności ze świata technologii, webmastering, marketing internetowy, AI, poradniki.

 

Partnerzy



Wszystkie kategorie

  • AI
  • Aktualności
  • Artykuły partnerskie
  • E-marketing
  • e(Biznes)
  • Poradniki
  • Publicystyka
  • Technologie
  • Technologie webowe

Ostatnio dodane

  • Jak zwiększyć rozpoznawalność marki w całym mieście dzięki reklamie na tramwajach
  • Newsletter w małym sklepie internetowym. Jak zacząć, żeby pierwszy mail nie wylądował w spamie
  • Jak wybrać agencję do tworzenia strony internetowej w Warszawie?
  • Badania profilaktyczne w Warszawie – jaki pakiet zrobić raz w roku i gdzie się umówić

Kontakt

Chcesz się z nami skontaktować? Jesteś zainteresowany reklamą lub artykułem sponsorowanym?

Skorzystaj z formularza kontaktowego lub napisz do nas na kontakt@webinside.pl

WebInside.plWebInside.pl
WebInside.pl © 2023 | Mapa strony | Forum | Polityka prywatności
Witaj ponownie!

Zaloguj się do swojego konta

Zapomniałeś hasła?