Bien, entrando en el tema de hash (array indeterminado)... un nuevo mundo por descubrir para mi, bien, pues veo que los controles de Xailer no estan familiarizados a tratar con ese typo de variables (Valtype() de un hash = "H") y no lo muestra en un sencillo Logdebug( miHash) o un MsgInfo(miHash) muestra { >= } pero nunca su contenido.
Para mostrar un contenido de un hash, debo de hacer LogDebug( HB_JsonEncode( hHash ) )
O un MsgInfo... MsgInfo( HB_JsonEncode( hHash ) )
No se... si se puede añadir a esas funciones que si se trata de mostrar un hash, que internamente ya lo haga la propia función.
Gracias.
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Xailer i HASHes
Xailer i HASHes
Un Saludo,
Xevi.
Xevi.
- ignacio
- Site Admin
- Mensajes: 9252
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Xailer i HASHes
Buenas tardes,
Creo que está mezclando dos temas completamente distintos aunque muchas veces se usen conjuntamente, que son los HASH y los JSONs.
Un hash de Harbour es simplemente una matriz 'especial' y cada uno de sus elementos puede tener cualquier tipo de valor, al igual que ocurre con las matrices. El logdebug() de una matriz no muestra su contenido, porque puede ser tremendamente compleja e incluso a veces alguno de sus elementos apuntan a otras matrices que a su vez apuntan a la matriz inicial y se crean referencias circulares. Por el mismo motivo no se muestra el contenido de un Hash.
Le adjunto más información acerca de los JSON: https://es.wikipedia.org/wiki/JSON
Saludos
Creo que está mezclando dos temas completamente distintos aunque muchas veces se usen conjuntamente, que son los HASH y los JSONs.
Un hash de Harbour es simplemente una matriz 'especial' y cada uno de sus elementos puede tener cualquier tipo de valor, al igual que ocurre con las matrices. El logdebug() de una matriz no muestra su contenido, porque puede ser tremendamente compleja e incluso a veces alguno de sus elementos apuntan a otras matrices que a su vez apuntan a la matriz inicial y se crean referencias circulares. Por el mismo motivo no se muestra el contenido de un Hash.
Le adjunto más información acerca de los JSON: https://es.wikipedia.org/wiki/JSON
Saludos
Re: Xailer i HASHes
Bien, tampoco se trata de un tema preocupante... si de esta manera puedo visualizar el contenido de un hash
LogDebug( HB_JsonEncode( hHash ) )
O un MsgInfo... MsgInfo( HB_JsonEncode( hHash ) )
Y además, para poder visualizarlo "ordenadamente" puedo utilizar el segundo parámetro de hb_jsonencode()
HB_JsonEncode( hHash, .T. )
y el resultado es más "cómodo" de verlo...
{
"installed":
{
"client_id": "xxxxxxxxxxxxxxxxxxxxxxxx.apps.googleusercontent.com",
"project_id": "xxxx-apis-xxxxxx",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_secret": "12345678901234567-xxxxxx",
"redirect_uris":
[
"urn:ietf:wg:oauth:2.0:oob",
"http://localhost"
]
}
}
LogDebug( HB_JsonEncode( hHash ) )
O un MsgInfo... MsgInfo( HB_JsonEncode( hHash ) )
Y además, para poder visualizarlo "ordenadamente" puedo utilizar el segundo parámetro de hb_jsonencode()
HB_JsonEncode( hHash, .T. )
y el resultado es más "cómodo" de verlo...
{
"installed":
{
"client_id": "xxxxxxxxxxxxxxxxxxxxxxxx.apps.googleusercontent.com",
"project_id": "xxxx-apis-xxxxxx",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_secret": "12345678901234567-xxxxxx",
"redirect_uris":
[
"urn:ietf:wg:oauth:2.0:oob",
"http://localhost"
]
}
}
Un Saludo,
Xevi.
Xevi.