46 lines
1.0 KiB
PHP
Executable File
46 lines
1.0 KiB
PHP
Executable File
<?php
|
|
# Sortieren von multidimensionalen Arrays
|
|
function sortArrayByFields($arr, $fields)
|
|
{
|
|
$sortFields = array();
|
|
$args = array();
|
|
|
|
foreach ($arr as $key => $row) {
|
|
foreach ($fields as $field => $order) {
|
|
$sortFields[$field][$key] = $row[$field];
|
|
}
|
|
}
|
|
|
|
foreach ($fields as $field => $order) {
|
|
$args[] = $sortFields[$field];
|
|
|
|
if (is_array($order)) {
|
|
foreach ($order as $pt) {
|
|
$args[$pt];
|
|
}
|
|
} else {
|
|
$args[] = $order;
|
|
}
|
|
}
|
|
|
|
$args[] = &$arr;
|
|
|
|
call_user_func_array('array_multisort', $args);
|
|
|
|
return $arr;
|
|
}
|
|
|
|
# Aus mehrdimensionalem Array löschen
|
|
function removeElementWithValue($array, $key, $value){
|
|
foreach($array as $subKey => $subArray){
|
|
if($subArray[$key] == $value){
|
|
unset($array[$subKey]);
|
|
}
|
|
}
|
|
return $array;
|
|
}
|
|
|
|
//Then you would call it like this:
|
|
//$array = removeElementWithValue($array, "year", 2011);
|
|
|
|
?>
|