1 up | 2 up | 3 up |
^^^ Additional posts ^^^
zorg.ch
#23779 by @ 02.09.2003 15:56 - nach oben -
Warum brauchst du multisort? Mein Code hier unten bringt den gleichen Output:

for($i = 0; $i < count($ar); $i++) {
sort($ar[$i]);
}

for($x = 0; $x < count($ar[0]); $x++)
{
for($i = 0; $i < count($ar); $i++)
{
echo $ar[$i][$x];
}
echo "< br / >";
$i = 0;
}
zorg.ch
#23781 by @ 02.09.2003 16:23 - nach oben -
jou, der milamber macht mich wiedermal glĂŒcklich...

danke, damit kann ich arbeiten
zorg.ch
#23782 by @ 02.09.2003 17:08 - nach oben -
nein doch ned, dein sort macht nicht das was ich will. du siehst es nur wenn du z.b. 5d durch 09 ersetzt.

// Array Auflistungssmethode
$ar1 = array ("9a", "8a", "7a", "6a", "5a", "4a", "3a", "2a", "1a");
$ar2 = array ("9b", "8b", "7b", "6b", "5b", "4b", "3b", "2b", "1b");
$ar3 = array ("9c", "8c", "7c", "6c", "5c", "4c", "3c", "2c", "1c");
$ar4 = array ("9d", "8d", "7d", "6d", "09", "4d", "3d", "2d", "1d");

$ar = array ($ar1, $ar2 , $ar3, $ar4);

//skaarj
array_multisort($ar1,SORT_ASC,$ar2,$ar3,$ar4);

for($x = 0; $x < count($ar[0]); $x++)
{
for($i = 0; $i < count($ar); $i++)
{
echo $ar[$i][$x];
}
echo "< br \>";
$i = 0;
}

echo "< br \>< br \>";
//milamber

for($i = 0; $i < count($ar); $i++) {
sort($ar[$i]);
}

for($x = 0; $x < count($ar[0]); $x++)
{
for($i = 0; $i < count($ar); $i++)
{
echo $ar[$i][$x];
}
echo "< br \>";
$i = 0;
}
zorg.ch
#23784 by @ 02.09.2003 17:35 - nach oben -
musst das hier machen: (also sowas in der art)

$text = "array_multisort(";
while( mehr arrays vorhanden ) {
$text .= "arrayname, ";
}
$text .= ");"

eval($text);
zorg.ch
#23786 by @ 02.09.2003 19:00 - nach oben -
ne der eval kapiert ned dass es im string ein array hat, sont hÀt ichs schon lange

geht:
array_multisort($ar1 , SORT_ASC , $ar2 , $ar3);

geht ned
$tmp = "array_multisort($ar1 , SORT_ASC , $ar2 , $ar3); ";
eval($tmp);
zorg.ch
#23788 by @ 02.09.2003 19:37 - nach oben -
Ich komm immer noch nicht ganz draus, hab dafĂŒr mal den gleichen output hingekriegt wie du mit:
array_multisort($ar,SORT_ASC);
for($x = 0; $x < count($ar[0]); $x++) {
for($i = 0; $i < count($ar); $i++) {
echo $ar[$i][$x];
}
echo "
";
$i = 0;
}

Hab diese Lösung schon angetönt/vermutet in meinem Post um 15:44.
zorg.ch
#23793 by @ 03.09.2003 08:34 - nach oben -
ne mach mal SORT_DESC ,

array_multisort($ar,SORT_ASC);
sortiert die einzelnen arrays im array
-----------------------------------------------
array_multisort($ar1 , SORT_ASC , $ar2 , $ar3);
sortiert die werte der arrays nach dem array $ar1
zorg.ch
#23794 by @ 03.09.2003 09:33 - nach oben -
Ja du hast recht... hm.. mir gehen langsam die Ideen aus:
$ar1 = array ("9a", "8a", "7a", "6a", "5a", "4a", "3a", "2a", "1a");
$ar3 = array ("9c", "8c", "7c", "6c", "5c", "4c", "3c", "2c", "1c");
$ar4 = array ("9d", "8d", "7d", "6d", "09", "4d", "3d", "2d", "1d");
$ar2 = array ("9b", "8b", "7b", "6b", "5b", "4b", "3b", "2b", "1b");
$ar = array ($ar1, $ar2 , $ar3, $ar4);

$text = "array_multisort(";
for($i = 0; $i < count($ar); $i++) {
$text .= '$ar['.$i.']';
if($i < (count($ar)-1)) $text .= ', ';
if($i == 0) $text .= 'SORT_DESC, ';
}
$text .= ");";
eval($text);

gibt bei mir den gleichen output wie dein:
array_multisort($ar1,SORT_DESC,$ar2,$ar3,$ar4);
zorg.ch
#23799 by @ 03.09.2003 14:10 - nach oben -
ich habs jetzt anders gelöst. musst dir nicht mehr den kopf zerbrechen. aber trotzdem danke
zorg.ch
#23800 by @ 03.09.2003 14:15 - nach oben -
Aber mein eval hÀtte gefunzt, nicht?
Additional posts
zorg.ch
#23780 by @ 02.09.2003 16:07 - nach oben -
blöd... in c könnte ich dir das jetzt low-levelig lösen :-)
die funktion hat eben schon eine saublöde syntax fĂŒr deine ansprĂŒche...
aber so wie milamber um 15:44 geschrieben hat, könnte es ja gehen, da php ja eh immer erst interpretiert wird...

ps: logarithmus ist was anderes.
zorg.ch
#23783 by @ 02.09.2003 17:14 - nach oben -
whatever, bbin immernoch "bastler" und ned coder
zorg.ch
#23804 by @ 03.09.2003 18:49 - nach oben -
[figg] ... SystemTechniker, nöd wohr? [/figg]