

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# JSON.ARRINSERT
<a name="json-arrinsert"></a>

Insere um ou mais valores nos valores da matriz no caminho antes do índice.

Sintaxe

```
JSON.ARRINSERT <key> <path> <index> <json> [json ...]
```
+ chave (obrigatório): uma chave do Valkey ou Redis OSS do tipo de documento JSON.
+ path (obrigatório): um caminho JSON.
+ índice (obrigatório) -Um índice de matriz antes do qual os valores são inseridos.
+ json (obrigatório) - O valor JSON a ser anexado à matriz.

**Return**

Se o caminho for uma sintaxe aprimorada:
+ Matriz de inteiros que representam o novo comprimento da matriz em cada caminho.
+ Se um valor for uma matriz vazia, seu valor de retorno correspondente será nulo.
+ Se um valor não for uma matriz, seu valor de retorno correspondente será nulo.
+ Erro `OUTOFBOUNDARIES` se o argumento índice estiver fora dos limites.

Se o caminho for uma sintaxe restrita:
+ Inteiro, o novo comprimento da matriz.
+ Erro `WRONGTYPE` se o valor no caminho não for uma matriz.
+ Erro `OUTOFBOUNDARIES` se o argumento índice estiver fora dos limites.

**Exemplos**

 Sintaxe do caminho aprimorada:

```
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\"]]"
```

 Sintaxe do caminho restrita:

```
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\"]]"
```