

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# JSON.STRLEN
<a name="json-strlen"></a>

Obtiene las longitudes de los valores de cadena JSON en la ruta.

Sintaxis

```
JSON.STRLEN <key> [path] 
```
+ clave (obligatorio): clave del tipo de documento JSON
+ ruta (opcional): una ruta JSON. Toma el valor predeterminado raíz si no se proporciona

**Devolución**

Si la ruta es de sintaxis mejorada:
+ Matriz de números enteros, que representa la longitud de la cadena en cada ruta.
+ Si un valor no es una cadena, su valor devuelto correspondiente es nulo.
+ Es nulo si la clave del documento no existe.

Si la ruta es de sintaxis restringida:
+ Entero, la longitud de la cadena.
+ Si se seleccionan varios valores de cadena, el comando devuelve la longitud de la primera cadena.
+ Error `WRONGTYPE` si el valor de la ruta no es una cadena.
+ Error `NONEXISTENT` si la ruta no existe.
+ Es nulo si la clave del documento no existe.

**Ejemplos**

 Sintaxis de la ruta mejorada:

```
127.0.0.1:6379> JSON.SET k1 $ '{"a":{"a":"a"}, "b":{"a":"a", "b":1}, "c":{"a":"a", "b":"bb"}, "d":{"a":1, "b":"b", "c":3}}'
OK
127.0.0.1:6379> JSON.STRLEN k1 $.a.a
1) (integer) 1
127.0.0.1:6379> JSON.STRLEN k1 $.a.*
1) (integer) 1
127.0.0.1:6379> JSON.STRLEN k1 $.c.*
1) (integer) 1
2) (integer) 2
127.0.0.1:6379> JSON.STRLEN k1 $.c.b
1) (integer) 2
127.0.0.1:6379> JSON.STRLEN k1 $.d.*
1) (nil)
2) (integer) 1
3) (nil)
```

 Sintaxis de la ruta restringida:

```
127.0.0.1:6379> JSON.SET k1 $ '{"a":{"a":"a"}, "b":{"a":"a", "b":1}, "c":{"a":"a", "b":"bb"}, "d":{"a":1, "b":"b", "c":3}}'
OK
127.0.0.1:6379> JSON.STRLEN k1 .a.a
(integer) 1
127.0.0.1:6379> JSON.STRLEN k1 .a.*
(integer) 1
127.0.0.1:6379> JSON.STRLEN k1 .c.*
(integer) 1
127.0.0.1:6379> JSON.STRLEN k1 .c.b
(integer) 2
127.0.0.1:6379> JSON.STRLEN k1 .d.*
(integer) 1
```