Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jak dodać do nazwy zmiennej jakiś wyraz?
Forum PHP.pl > Forum > Przedszkole
david8213
Mam np zmienną $warszawa
chciałbym żeby niżej w kodzie przyjęła nazwę $moja_warszawa
olszam
  1. $moja_waszawa = $warszawa;


nie wiem czy o to ci chodziło.
david8213
coś takiego tylko wiem że wyrazów tak dodawac nie mozna

  1. <?php
  2. $nazwa="moja";
  3. $warszawa="warszawa";
  4.  
  5. $var1=($nazwa+$warszawa);
  6.  
  7. echo $var1;
  8.  
  9. // ma powstać nowa zmienna $moja_warszawa;
  10.  
  11. ?>



olszam
  1. $var1 = $nazwa."_".$warszawa;

plusy to w js, w php kropki.
david8213
tak. o to chodziło. Dziękuję smile.gif


Jak wyświetlić zmienną $u_205="1000"; z działania żeby podstawił mi ją na samym dole

  1. <?
  2. $u_205="1000";
  3.  
  4. $rodzaj="u";
  5. $srednica="200";
  6. $dlugosc="5";
  7.  
  8. $wynik=($srednica+$dlugosc);
  9.  
  10. $var1 = $rodzaj."_".$wynik;
  11.  
  12. echo $var1; // wyświetli mi u_205; a chcę żeby mi podstawiło za u_205 = 1000 <- zmienna z samej góry
  13.  
  14. // to poniżej nie działa
  15.  
  16. $var1=$zmienna;
  17. echo $zmienna;
  18.  
  19.  
nospor
Zmienne zmienne
http://php.net/manual/en/language.variables.variable.php

Ale i tak zle do tego podchodzisz. Czemu nie trzymasz tego w tablicach?
david8213
tak czytam i nie mogę znaleźć błędu. Co jest nie tak ?


Dlaczego mi nie wyświetla na koniec liczby 1000 ?
nospor
To czytaj dokladniej. Przeciez tam sa bardzo czytelne przyklady ktore znaczaco roznia sie od twojego.
david8213
Jak ktoś bedzie wiedział prosze o pomoc bo nie mogę znaleźć dalczego

Wstawiałem po dwa $$ ale dalej nie wyświetla

echo $var1->$zmienna;
viking
$var1->{$zmienna}
nospor
@viking, ja moze gotowca mu nie podaje tylko pastwie sie nad nim kazac mu przecyztac linka co mu podalem. Ale to co ty teraz zrobiles to juz swinstwo.... wink.gif Widziales w jego oryginalnym kodzie jakies obiekty?
david8213
Cytat(viking @ 21.11.2018, 13:52:09 ) *
$var1->{$zmienna}



Juz tak robiłem - Nadal nie wyświetla mi liczby 1000

  1. <?
  2. $u_205="1000";
  3.  
  4. $rodzaj="u";
  5. $srednica="200";
  6. $dlugosc="5";
  7.  
  8. $wynik=($srednica+$dlugosc);
  9.  
  10. $var1 = $rodzaj."_".$wynik;
  11.  
  12. $var1->{$zmienna};
  13.  
  14. //echo $var1->{$zmienna};
  15.  
  16. echo $zmienna;
  17.  
  18. ?>


Będziecie się tak pastwić ? W takim razie dziękuje za pomoc
nospor
Sam sie pastwisz nad soba. Wyraznie napisalem ze
$var->
nie zadziala bo ty tam nie masz obiektow a ty nadal swoje. Nie czytasz co masz doku, nie czytasz co ci sie mowi i to my jestesmy ci zli.
david8213
Tak będzie poprawnie ? Bo liczyć liczy

  1. <?
  2. $u_205="1000";
  3.  
  4. $rodzaj="u";
  5. $srednica="200";
  6. $dlugosc="5";
  7.  
  8. $wynik=($srednica+$dlugosc);
  9.  
  10. $var1 = $rodzaj."_".$wynik;
  11.  
  12. $cena = new stdClass();
  13. echo $cena->{$var1};
  14. echo $$var1;
  15.  
  16. ?>


nospor
Jeszcze mi tylko napisz po co dales to:

$cena = new stdClass();
echo $cena->{$var1};

?
Bo bez tego byloby naprawde super. Dokladnie to co bylo napisane na samym poczatku w linku, ktory ode mnie dostales
david8213
Masz rację - przekombinowane - Dziękuję smile.gif
nospor
I naprawde bylo tak trudno przeanalizowac te dwa pierwszy przyklady co miales podane w manualu? Musisz sie wkoncu ogarnac a nie strzelac na oslep bo to nie pierwszy raz
Neutral
  1. <?php
  2. class Word {
  3.  
  4. public function __construct($single_word) {
  5. $this->single_word = $single_word;
  6. }
  7.  
  8. public function __concat_str($str, $side = false, $space = false) {
  9. if($space === true) {
  10. $space = ' ';
  11. } else {
  12. $space = '';
  13. }
  14. if($side === true) {
  15. return $str.$space.$this->single_word;
  16. } else {
  17. return $this->single_word.$space.$str;
  18. }
  19. }
  20.  
  21. public function __set_color($col, $string) {
  22. return "<span style='color:$col;'>".$string."</span>";
  23. }
  24.  
  25. }
  26.  
  27.  
  28. function concat_str($concatenate_word, $string, $color = 'black', $allo1 = true, $allo2 = true) {
  29.  
  30. $my_method1 = $concatenate_word->__concat_str($string, $allo1, $allo2);
  31. $my_method2 = $concatenate_word->__set_color($color, $my_method1);
  32. return $my_method2;
  33. }
  34.  
  35. $concatenate_word = new Word('fish');
  36. echo concat_str($concatenate_word, 'HELLO', 'orange');
  37.  
  38. echo "<br />";
  39.  
  40. $concatenate_word = new Word('apple');
  41. echo concat_str($concatenate_word, 'I see', 'pink');
  42.  
  43. echo "<br />";
  44.  
  45. $concatenate_word = new Word('sand');
  46. echo concat_str($concatenate_word, 'I reclined on the', 'gold')."<br />";
  47. echo concat_str($concatenate_word, 'I reclined on the', 'gold')."<br />";
  48. echo concat_str($concatenate_word, 'I reclined on the', 'gold')."<br />";
  49. echo concat_str($concatenate_word, 'I reclined on the', 'gold')."<br />";
  50. echo concat_str($concatenate_word, 'I reclined on the', 'gold')."<br />";
  51. $concatenate_word = new Word('beach');
  52. echo concat_str($concatenate_word, 'I reclined on the', 'gold')."<br />";
  53. echo concat_str($concatenate_word, 'I reclined on the', 'lime')."<br />";
  54.  
  55. ?>
nospor
@Neutral to na pewno mialo byc w tym temacie?
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.