A VBScript equivalent of PHP’s uasort
Function uasort(ByRef arr, cmp_function)
uasort = false
If Not IsObject(arr) Then Exit Function
Dim key,keys
Dim new_arr : set new_arr = Server.CreateObject("Scripting.Dictionary")
Dim found
Dim cnt
keys = array_values(arr)
usort keys,cmp_function
For Each key In keys
found = array_keys(arr,key,true)
If isArray(found) Then
For cnt = 0 to uBound(found)
If Not new_arr.Exists(found(cnt)) Then
new_arr.Add found(cnt), arr(found(cnt))
End If
Next
Else
new_arr.Add found, arr(found)
End If
Next
set arr = new_arr
uasort = true
End Function
Please also note that php.vbs offers community built functions and goes by the McDonald’s Theory. We’ll put online functions that are far from perfect, in the hopes to spark better contributions. Do you have one? Then please just: