aqui os dejo parte del codigo que realiza la operacion.
Código PHP:
Public Function Encode_DecMD(ByVal valor As String, ByVal tipo As String)
Dim arr(4, 2) As String
Dim carac As Integer = Len(valor)
Dim leido, cadena As String
Dim lee_array As Integer
Dim x As Integer = 0
Dim id As Integer = 1
arr.SetValue(" ", 1, 1)
arr.SetValue("X1", 1, 2)
'------------------------'
arr.SetValue("A", 2, 1)
arr.SetValue("X2", 2, 2)
'------------------------'
arr.SetValue("B", 3, 1)
arr.SetValue("X3", 3, 2)
'------------------------'
arr.SetValue("C", 4, 1)
arr.SetValue("X4", 4, 2)
Select Case tipo
Case "enc"
For x = 1 To carac
leido = Mid(valor, x, 1)
For lee_array = 1 To 77
If leido = arr.GetValue(lee_array, 1) Then
cadena = cadena & arr.GetValue(lee_array, 2)
leido = ""
End If
Next
Next
valor = cadena
Return (valor)
Case "dec"
For x = 1 To carac
leido = Mid(valor, id, 2)
For lee_array = 1 To 77
If leido = arr.GetValue(lee_array, 2) Then
cadena = cadena & arr.GetValue(lee_array, 1)
leido = ""
End If
Next
id = id + 2
Next
valor = cadena
Return (valor)
End Select
End Function
la idea esta hay, si alguien se le ocurre un metodo factible para cambiar el orden de los resultados, se lo agradeceria.






Mode Lineal
