Define + promnena

<?
define("KAP_100", "ahoj");
$cast = 100;

echo KAP_100; //ahoj
echo $cast; // 100
echo KAP_$cast // chyba :-((
?>

nevite jak to udelat aby to fakcilo ? potrebuju konstatu a k tomu pridat tu promenou ale nefaka to :-((
echo KAP_.$cast;
tedy spis
echo KAP_100.$cast
ja potrebuju abych spojil to KAP_$cast tak abych kdyz mam vice define KAP_100, KAP_200 mohl jenom pomoci $cast menit..
tohle co jsi mne rekl vi zakda lemruna jak spojovat ale ja potrbuju kousek define a ten druhej kousek doplnit promenou..
Autor: Sacred Empire (---.home.nbox.cz)
Datum: 16. 05. 2004 13:14

<?
define("KAP_100", "ahoj");
$cast = 100;

echo KAP_100; //ahoj
echo $cast; // 100
echo KAP_$cast // chyba :-(( a chci aby to vyslo jako KAP_100 pac $cast je 100 a vyfluslo ahoj.
?>
<HTML>to neni mozne.. alespon podle mych znalosti z C... protoze driv nez se $cast = 100; vubec zavede jako promenna jsou vsude v programu misto echo KAP_100; jen echo "ahoj"; a tak vlastne v dobe zavadeni promennych uz nazev KAP_100 ani neexistuje.. takhle strucne tomu bylo v C a tady to nebude jine.. to chces udelat resi pole s klici a ne konstanty</HTML>
hm..z toho co ji napsal jsem skoro nic nepochopil jen to ze to proste nejde :-))
echo constant ("KAP_" . $cast)
<HTML>jo to je taky moznost o ktere jsem ani nevedel abych pravdu rekl ale porad mi to prijde lepsi resit polem</HTML>
to uz je na nem, jestli neni linej to predelat
Jo takhle to bylo mysleno... Na to je dobre pole
eval("echo KAP_" . $cast);
existuje tzv variable variable, uvedu na prikladu:

$neco = "ahoj";
$$neco == $ahoj; // pisu to takhle, zduraznuji tim, ze $$neco je totez jako $ahoj ;)

bohuzel u konstant si nejsem moc jist, mozna, kdyby zacinaly od $... ;) pak by to bylo:

$konstanta = "KAP_".100;
echo $$konstanta // vypise hodnotu $KAP_100

ovsem nejlepsi by bylo pole, jak zde uz kdosi zminil ;)
je to hezky ze se vypise $KAP_100 ale ne KAP_100 .. no co uz to nereste at si to napise jak se mu to do programu hodi nejvic
Hm..echo constant ("KAP_" . $cast) tohel se mne zamlouva a co presne dela ta fce constant ja to neak nepochopil..
<HTML>mixed constant ( string name)


constant() will return the value of the constant indicated by name.

constant() is useful if you need to retrieve the value of a constant, but do not know its name. i.e. It is stored in a variable or returned by a function.

Example 1. constant() example

<?php

define("MAXSIZE", 100);

echo MAXSIZE;
echo constant("MAXSIZE"); // same thing as the previous line

?></HTML>
mno to je pekny ze jsi mne to vytahl z cz.php.net ale i tak to jako pouze vyfulsne no to teda je na prd.. :-)
<HTML>aha.. tak jinak... vraci hodnotu konstanty podle jejiho jmena...</HTML>
Jako obvykle.. PHP manual mluvi jasne a zretelne, neni na tom nic k nepochopeni
jinými slovy vim vim akorat jsem linej :-)