Autor Zpráva
leonid
Profil
Ahoj,

nedokazu vyvolat pole z hodnoty retezce.

Priklad:

$hodnota = array(1 => 'jedna',
                             2 => 'dve',);

$string =  'hodnota';
$string = '$' . 'hodnota';


print_r($string)  // vypise $hodnota


Potreboval bych do $string dostat pole $hodnota. Promennou $string ziskavam pres $_SERVER['REQUEST_URI'] proto je to tak komplikovane.
Uz se s tim trapim pres 3 hod.

Moderátor Majkl578: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
panther
Profil
leonid:
Potreboval bych do $string dostat pole $hodnota
a proto proměnné přiřazuješ „hodnota“?

Spíš napiš, čeho chceš dosáhnout, tohle mi přijde celé trochu krkolomné, co vytváříš.
leonid
Profil
panther:

Mam v config souboru nekolik poli a potrebuji vyvolat pole na zaklade hodnoty, kterou dostanu pres $_SERVER['REQUEST_URI']. Dam priklad, ze stranky obleceni.html ziskam hodnotu 'obleceni' a potrebuji ted vyvolat pole $obleceni.
keeehi
Profil
leonid:
V tom případě doporučuji switch. Příklad:

switch ($_SERVER['REQUEST_URI']) {
    case 'jedna':    echo "vypis jedna"; break;
    case 'dva':      echo "vypis dva"; break;
    case 'obleceni': echo $obleceni; break;
}
panther
Profil
leonid:
a je nutné zakládat proměnnou „$string“, které předáš akorát to, co je v jiné proměnné.

Nestačilo by něco jako
${$_SERVER['REQUEST_URI']}
?
leonid
Profil
Diky, jenze to neresi problem. Jediny udaj co znam je $string = 'auta' a potrebuju na zaklade toho vyvolat pole $auta.



$auta = array(1 => 'skoda', 2 => 'fiat');

$obleceni = array(1 => 'triko', 2 => 'svetr');

$string = 'auta';

leonid
Profil
Pres switch to teda jde vyresit, jenze musim vypsat vsechny moznosti. Myslel jsem ze existuje zpusob, jak to pole vyvolat, kdyz je stejne pojmenovane jako hodnota, co se mi vraci v $_SERVER['REQUEST_URI']
panther
Profil
leonid:
Jediny udaj co znam je $string = 'auta'
no však
$string = ${$_SERVER['REQUEST_URI']};
// je to totéž, co $string = $auta, tedy přiřazení pole 'auta' do proměnné $string
leonid
Profil
panthere moc ti dekuji, uz jsem to konecne pochopil :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: