

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.ARRINSERT
<a name="json-arrinsert"></a>

Inserta uno o varios valores en los valores de la matriz en la ruta antes del índice.

Sintaxis

```
JSON.ARRINSERT <key> <path> <index> <json> [json ...]
```
+ clave (obligatorio): clave del tipo de documento JSON
+ ruta (obligatoria): ruta JSON
+ índice (obligatorio): índice de matriz antes del cual se insertan los valores.
+ json (obligatorio): valor JSON que se agregará a la matriz

**Devolución**

Si la ruta es de sintaxis mejorada:
+ Matriz de números enteros que representan la nueva longitud de la matriz en cada ruta.
+ Si un valor es una matriz vacía, su valor devuelto correspondiente es nulo.
+ Si un valor no es una matriz, su valor devuelto correspondiente es nulo.
+ Error `OUTOFBOUNDARIES` si el argumento índice está fuera de los límites.

Si la ruta es de sintaxis restringida:
+ Entero, la nueva longitud de la matriz.
+ Error `WRONGTYPE` si el valor de la ruta no es una matriz.
+ Error `OUTOFBOUNDARIES` si el argumento índice está fuera de los límites.

**Ejemplos**

 Sintaxis de la ruta mejorada:

```
127.0.0.1:6379> JSON.SET k1 . '[[], ["a"], ["a", "b"]]'
OK
127.0.0.1:6379> JSON.ARRINSERT k1 $[*] 0 '"c"'
1) (integer) 1
2) (integer) 2
3) (integer) 3
127.0.0.1:6379> JSON.GET k1
"[[\"c\"],[\"c\",\"a\"],[\"c\",\"a\",\"b\"]]"
```

 Sintaxis de la ruta restringida:

```
127.0.0.1:6379> JSON.SET k1 . '[[], ["a"], ["a", "b"]]'
OK
127.0.0.1:6379> JSON.ARRINSERT k1 . 0 '"c"'
(integer) 4
127.0.0.1:6379> JSON.GET k1
"[\"c\",[],[\"a\"],[\"a\",\"b\"]]"
```