<?php
function sort_2D_hash($hash, $sortKey, $sortMethod = SORT_REGULAR) {
/*
Fehlerprüfungen
*/
SORT_REGULAR,
SORT_NUMERIC,
SORT_STRING,
SORT_LOCALE_STRING,
SORT_NATURAL,
( SORT_STRING | SORT_FLAG_CASE ),
( SORT_NATURAL | SORT_FLAG_CASE )
);
trigger_error(' function : sort_2D_hash : Es wurde kein Array übergeben', E_USER_ERROR);
}
$gueltig = true;
foreach ( $originalKeys as $key) {
if ($gueltig and
'string' != gettype($sortKey) ) {
trigger_error(' function : sort_2D_hash : Einer der Schlüssel des Hashes (' . $key . ') ist kein String. Die Funktion sort_2D_hash ist nicht verwendbar.', E_USER_NOTICE);
$gueltig = false;
}
}
if ( ! isset( $hash, $sortKey ) ) {
trigger_error(' function : sort_2D_hash : Der Sortierschlüssel (' . $sortKey . ') existiert nicht im Hash', E_USER_NOTICE);
return false;
}
if ( ! in_array( $sortMethod, $sortAllowed, 1 ) ) {
trigger_error(' function : sort_2D_hash : Die übergebene Sortiermethode (' . $sortMethod . ') ist ungültig', E_USER_ERROR);
}
/*
Aktion
*/
foreach($originalKeys as $key) { $hilfsArray[$key] = $hash[$key][$sortKey]; }
asort ( $hilfsArray, $sortMethod );
foreach(array_keys($hilfsArray) as $key) { $returnHash[$key] = $hash[$key]; }
return $returnHash;
}