Sziasztok!
Le akarom egyszerűsíteni egy tömb írását. Mégpedig nem kézzel akarom felvinni a számokat 40-től 280-ig, hanem valahogy automatikusan kéne ezt megoldani.
for ($i = 40; $i <= 280; $i++) {
echo $i;
}
jó lenne, de tömb kell, amiben a számok 40-től 280-ig felvannak sorolva.
Kulcs és érték is ugyanaz a szám.
Valakinek valami ötlete? :)
Köszönöm a segítséget mindenkinek!
- 1046 megtekintés
Hozzászólások
Ez most PHP?
Akkor $tomb[$i] = $i; ha nem csalnak a megfakult emlékeim.
Szerk.: amúgy mi a fenére kell ez?
- A hozzászóláshoz be kell jelentkezni
Igen, PHP.
- A hozzászóláshoz be kell jelentkezni
Ha php: http://hu.php.net/manual/en/function.range.php
Persze így az indexek nem lesznek jók, csúnya megoldás lehet hogy 0-tól generálod és "kivágod" a neked kellő részt mondjuk ezzel: http://hu.php.net/manual/en/function.array-slice.php
Talán így picit gyorsabb mintha te írod meg forral, mivel ezek a függvények jó esetben C-ben vannak implementálva. De elegánsnak nem nevezném...
- A hozzászóláshoz be kell jelentkezni
Ez egy lenyíló menühöz kell amúgy, és az összes számra szükség van, hogy a megfelelőt ki tudják választani.
Amit küldtél már néztem, és megpróbáltam, de csak az utolsó számot jeleníti meg.
- A hozzászóláshoz be kell jelentkezni
Közben rájöttem, hogy a slice által generált tömbben a 0-ás indexhez kerülne az első szám szóval az semmiképpen nem jó.
- A hozzászóláshoz be kell jelentkezni
van neki preserver_keys flag-je.
t
- A hozzászóláshoz be kell jelentkezni
Hát nem, mert úgy kell, hogy felsorolja
array(
'1' => '1',
'2' => '2',
...
);
ugye... Így a végén lesz egy lenyíló menü 40-től 280-ig. Csak ezt kézzel beírni időigényes.
A keretrendszer codeigniter.
- A hozzászóláshoz be kell jelentkezni
$ php -r '$foo = range(5, 9); $foo = array_combine($foo, $foo); print_r($foo);';echo
Array
(
[5] => 5
[6] => 6
[7] => 7
[8] => 8
[9] => 9
)
t
- A hozzászóláshoz be kell jelentkezni
Épp írni akartam... :) Röviden +1
- A hozzászóláshoz be kell jelentkezni
Köszi szépen, a megoldásod segített.
$foo = range(40, 280);
$valami = array_combine($foo, $foo);
- A hozzászóláshoz be kell jelentkezni
a masik lehetoseg, amit a kollega is javasolt par sorral lejjebb:
$ php -r '$foo = array(); foreach (range(5, 9) as $bar) { $foo[$bar] = $bar; } print_r($foo);';echo
Array
(
[5] => 5
[6] => 6
[7] => 7
[8] => 8
[9] => 9
)
t
- A hozzászóláshoz be kell jelentkezni
Köszi!
- A hozzászóláshoz be kell jelentkezni