Autor | Zpráva | ||
---|---|---|---|
VelkyBubak Profil * |
#1 · Zasláno: 13. 12. 2012, 12:38:47
$aktualniStranka = "postavy";
$postavyOstatni = array("obrazky","anime","dorama","manga"); $Ostatni = $aktualniStranka."Ostatni"; Jak pomocí $Ostatní přistoupit k proměnné $postavyOstatni[0] myslel jsem že by mohlo fungovat něco jako $$Ostatni[0] ale tak tomu není |
||
ShiraNai7 Profil |
#2 · Zasláno: 13. 12. 2012, 12:43:02
${$Ostatni}[0] ale není to dobrá praktika (resp. dá se to řešit jinak a lépe).
|
||
Joker Profil |
#3 · Zasláno: 13. 12. 2012, 12:55:27
VelkyBubak:
Proč nepoužijete normální pole? $ostatni["postavy"] = array("obrazky","anime","dorama","manga"); $aktualniStranka = "postavy"; echo $ostatni[$aktualniStranka][0]; Proměnné proměnné jsou jen takový úlet v PHP a je lepší se tvářit, že taková vlastnost vůbec neexistuje. |
||
VelkyBubak Profil * |
#4 · Zasláno: 13. 12. 2012, 13:44:17
Joker:
Proč? Snažím se z adresy aktuální stránky sestavit odkazy na ostatní stránky. Až na jeden parametr z GET (typVypisu) je adresa stejná. Takže se snažím nahradit jen one parametr, dostat to do odkazu, udělat to tak aby se to dalo číst (vyznat se v tom) a nic lepšího mě nenapadlo. $aktualniHTTP = ".$_SERVER['REQUEST_URI]http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; $aktualniStranka = $_GET["typVypisu"]; //resp. parametr, může nabývat hodnot obrazky, anime, dorama, manga, postavy $postavyOstatni = array("obrazky","anime","dorama","manga"); $obrazkyOstatni = array("postavy","anime","dorama","manga"); $animeOstatni = array("postavy","obrazky","dorama","manga"); $doramaOstatni = array("postavy","obrazky","anime","manga"); $mangaOstatni = array("postavy","obrazky","anime","dorama"); $Ostatni = $aktualniStranka."Ostatni"; $str2 = str_replace($aktualniStranka,${$Ostatni}[0],$aktualniHTTP); //na co změnit $str3 = str_replace($aktualniStranka,${$Ostatni}[1],$aktualniHTTP); $str4 = str_replace($aktualniStranka,${$Ostatni}[2],$aktualniHTTP); $str5 = str_replace($aktualniStranka,${$Ostatni}[3],$aktualniHTTP); Děkuji ShiraNai7 za odpověď. Jen tak pro pořádek - může mi někdo vysvětlit, proč to není dobrá praktika a je lepší se tvářit že neexistuje? Nebo to žádný specifický důvod nemá? |
||
ShiraNai7 Profil |
VelkyBubak:
„proč to není dobrá praktika a je lepší se tvářit že neexistuje?“ Protože to svádí je zbytečně složitým řešením. Proč to nemůžeš mít celé v jednom poli a přistupovat k tomu tak, jak píše Joker? $typy= array( 'postavy' => array("obrazky","anime","dorama","manga"), 'obrazky' => array("postavy","anime","dorama","manga"), 'anime' => array("postavy","obrazky","dorama","manga"), 'dorama' => array("postavy","obrazky","anime","manga"), 'manga' => array("postavy","obrazky","anime","manga"), ); Navíc mi to přijde celé divné, když jsou všechny ty pole stejné. |
||
Sir Tom Profil |
Takže vlastně chceš udělat to, že když budeš na stránce postav, aby se do proměnných $strX daly odkazy na obrázky, anime, dorama, manga? A když budeš na stránce obrázků, chceš mít odkazy na postavy, anime, dorama, manga? Tento způsob je dost komplikovaný.
Není lepší toto? $typy = array("postavy", "obrazky", "anime", "dorama", "manga"); $aktualniTyp = $_GET["typVypisu"]; $stranky = array(); foreach($typy as $typ){ if($typ==$aktualniTyp) continue; $stranky[] = "nejakySoubor.php?typVypisu=".$typ; } A v proměnné $stranky máš ty odkazy. |
||
VelkyBubak Profil * |
#7 · Zasláno: 13. 12. 2012, 14:29:06
Sir Tom:
Aha, pomocí foreach (to jsem neznal) se vyhnu těm x polím, a $str2 = str_replace($aktualniStranka,${$Ostatni}[0],$aktualniHTTP); $stranky[] = str_replace($aktualniTyp,$typ,$aktualniHTTP); |
||
Časová prodleva: 11 let
|
0