dynamisch assoz. Array erzeugen
Joachim
- php
Hi,
ich stelle mich grad etwas blöd an:
gibt es einen simplen Weg, aus den Values eines eindimensionalen Arrays die Keys fuer ein Mehrdemensionales zu machen?
also aus diesem:
$myKeys = array("lulu", "lala");
soll sowas werden:
$newArr["lulu"]["lala"] = "...";
wobei die Anzahl der Elemente variiert.
Hat jemand mal eine kleine Initialzuendung fuer mich?
Gruesse Joachim
Hi,
ich stelle mich grad etwas blöd an:
gibt es einen simplen Weg, aus den Values eines eindimensionalen Arrays die Keys fuer ein Mehrdemensionales zu machen?also aus diesem:
$myKeys = array("lulu", "lala");soll sowas werden:
$newArr["lulu"]["lala"] = "...";wobei die Anzahl der Elemente variiert.
Hat jemand mal eine kleine Initialzuendung fuer mich?Gruesse Joachim
for($i=0; $<sizeof($myKeys); $i++) {
$newArr[$myKeys[$i]][$myKeys[$i+1]];
}
wenn du das so meinst?
Hi Joachim
Hi,
ich stelle mich grad etwas blöd an:
gibt es einen simplen Weg, aus den Values eines eindimensionalen Arrays die Keys fuer ein Mehrdemensionales zu machen?also aus diesem:
$myKeys = array("lulu", "lala");soll sowas werden:
$newArr["lulu"]["lala"] = "...";wobei die Anzahl der Elemente variiert.
Hat jemand mal eine kleine Initialzuendung fuer mich?Gruesse Joachim
grundsätzlich funktioniert das so:
$myKeys = array("lulu", "lala");
$newArr[$myKeys[0]][$myKeys[1]] = "...";
echo "hier:".$newArr["lulu"]["lala"];
das ganze kanst du dann damit es variabel wir noch durch eine:
for ($i=0; $i<count($myKeys); $i++){ 'die zuordnung' }
Schleife laufen lassen.
mfg Joey
wobei die Anzahl der Elemente variiert.
Hat jemand mal eine kleine Initialzuendung fuer mich?
Zündet das?
<?php
$mykeys = array( "lulu", "lala" );
foreach( $mykeys as $values )
{
$newarr[$values] = array( "Neues_Array" );
}
?>
Gruss AndreD
Hi,
foreach( $mykeys as $values )
{
$newarr[$values] = array( "Neues_Array" );
}
dann habe ich das:
$newarr[$values_1] = "Neues_Array";
$newarr[$values_n] = "Neues_Array";
nicht aber:
$newarr[$values_1][$value_n] = "..";
Gruesse Joachim
Hi,
der Vollstaendigkeit halber - ich konnte das Problem wie folgt loesen:
<?php
$temp = array("lal", "lul");
$newArr = array();
function make_arr($arr, $keyArr, $arrVal, $cnt) {
if ($cnt < count($keyArr)) {
$key = $keyArr[$cnt];
$cnt++;
if (!isset($arr[$key])) $arr[$key] = array();
make_arr(&$arr[$key], $keyArr, $arrVal, $cnt);
}
else $arr = $arrVal;
return $arr;
}
$newArr = make_arr(&$newArr, $temp, "testvalue", 0);
?>
<html>
<head>
</head>
<body><?=$newArr["lal"]["lul"]?></body>
</html>
Gruesse Joachim