A VBScript equivalent of PHP’s ===
Function [===](a, b)
[===] = false
Dim tmp_a,tmp_b
Dim key
If (isArray(a) or isArray(b)) or (isObject(a) or isObject(b)) Then
If isObject(a) and isObject(b) Then
If a.count <> b.count Then Exit Function
tmp_a = a.keys : tmp_b = b.keys
If Not [===](tmp_a,tmp_b) Then Exit Function
tmp_a = a.Items : tmp_b = b.Items
If Not [===](tmp_a,tmp_b) Then Exit Function
[===] = true
End If
If isArray(a) and isArray(b) Then
If uBound(a) <> uBound(b) Then Exit Function
For key = 0 to uBound(a)
If Not [===](a(key),b(key) ) Then Exit Function
Next
[===] = true
End If
Else
[===] = eval(a = b and vartype(a) = vartype(b))
End If
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: