Ik zou één array maken van die 74/122 en de categories_id. Die sorteren en dan bijbehorend aan de key 74/122 de array weer ophalen.
kun je eens een voorbeeldje geven want ik begrijp niet exact hoe je bedoelt?
grtz
Minuutje, ik zal eens een serteeralgoritme schrijven.
Zie ook [php]usort[/php]. Voorbeeldje:
<?php
function order_by_category_id($a, $b) {
if($a['categories_id'] == $b['categories_id']) return 0;
if($a['categories_id'] < $b['categories_id']) return -1;
else return 1;
}
// u_a_sort omdat we de keys niet willen aanpassen, alleen de volgorde
uasort($array, 'order_by_category_id');
var_dump($array);
?>
<?
$names = array('geert', 'albert', 'Freya', 'Jasper', 'Louis', 'Jenne', 'suzy', 'Liesbet', 'Hans', 'Theo', 'Albrecht');
$index_gesorteerd = sorteer($names);
print_r($index_gesorteerd);
foreach ($index_gesorteerd as $index)
echo '<br />'. $names[$index];
function sorteer($items)
{
$index_gesorteerd = array();
$i = 0;
foreach ($items as $item)
{
$index_gesorteerd[$i] = $i;
$i++;
}
$aantal_items = $i;
$i = 0;
$aantal_items_gesorteerd = 0;
while($aantal_items_gesorteerd < $aantal_items - 1)
{
$aantal_items_gesorteerd = 0;
for($i=1; $i<$aantal_items; $i++)
{
if (strcasecmp($items[ $index_gesorteerd[$i] ] , $items[ $index_gesorteerd[$i - 1] ] ) < 0)
{
$temp = $index_gesorteerd[$i];
$index_gesorteerd[$i] = $index_gesorteerd[$i - 1];
$index_gesorteerd[$i - 1] = $temp;
}
else
{
$aantal_items_gesorteerd++;
}
}
}
return $index_gesorteerd;
}
?>
Okay, je geeft dus 1 van de velden mee, kies zelf maar.
Je krijgt een nieuwe $index.
Met de foreach lus bovenaan zie je een voorbeeld van hoe je het zou kunnen gebruiken.
Jelmer schreef op 25.06.2008 19:31
Zie ook [php]usort[/php]. Voorbeeldje:
<?php
function order_by_category_id($a, $b) {
if($a['categories_id'] == $b['categories_id']) return 0;
if($a['categories_id'] < $b['categories_id']) return -1;
else return 1;
}
// u_a_sort omdat we de keys niet willen aanpassen, alleen de volgorde
uasort($array, 'order_by_category_id');
var_dump($array);
?>
@ Jelmer: heb even rond gekeken op php.net/uasort. Maar snap nog steeds niet echt wat de functie nu doet.
Kan jij dat miss even uitleggen?
b.v.d. boris