# PHP para Iniciantes: Operador de concatenação

Eu acho divertido encontrar artigos como esse, porque geralmente não tem muito o que falar e acaba ficando curtíssimo. Mas, ao invés de apenas passar informações sobre o operador de hoje, eu também irei mostrar uma forma alternativa de fazer a mesma coisa. Tudo depende de como está seu código, se está com variáveis ou constantes... Tá interessado(a)? Ok, vamos começar.

## Operador `.`

Sim, exatamente, um ponto. Esse ponto serve para **concatenar** dois textos (leia-se `string`). Da mesma forma que os operadores lógicos, se você inserir outro tipo de dado que não seja uma string, o interpretador irá converter pra você.

Então é bem simples:

```php
<?php

$nome = 'Kaique';
$sobrenome = 'Garcia';

$nomeCompleto = $nome . ' ' . $sobrenome;
var_dump($nomeCompleto); // string(Kaique Garcia)
```

Primeiramente, eu consegui juntar o texto `'Kaique'` com o texto de espaço em branco `' '`. Depois, juntei o resultado com `'Garcia'`, o que resulta em `'Kaique Garcia'`.

> Então o significado de **concatenar** é **juntar**, Kiko?

Bom, se você der uma espiada no dicionário, temos:

> **concatenar** (verbo)

> 1. transitivo direto, transitivo indireto e bitransitivo e pronominal
> ligar(-se), juntar(-se) numa cadeia ou sequência lógica ou orgânica.
> "c. ideias (com a ação)"

> 2. transitivo direto, transitivo indireto e bitransitivo e pronominal
> concertar(-se), harmonizar(-se), condizer.
> "c. interesses (com o prazer)"

Então sim, você pode traduzir **concatenação** como **união** e **concatenar** como **juntar**. Enfim... Além dessa escrita do operador isolado, nós também podemos usar a sintaxe do operador com atribuição:

```php
<?php

$nome = 'Kaique';
$sobrenome = 'Garcia';

$nomeCompleto = $nome; // ok, primeiro nome somente
$nomeCompleto .= ' '; // adicionamos um espaço em branco no final
$nomeCompleto .= $sobrenome; // adicionamos o $sobrenome no final

var_dump($nomeCompleto); // string(Kaique Garcia)
```

Assim fica mais legível, concorda? Ao menos pra quem nunca viu esse operador, dá pra ter uma ideia do que está acontecendo em cada sequência. De todo modo, **concatenar não é a única forma de unir dois textos**.

## Parsing de `string`

Esse é um assunto que eu já falei no artigo [Tipo de Dados Primitivos - Textos](https://blog.kaiquegarcia.dev/php-para-iniciantes-tipos-de-dados-primitivos-textos). Resumidamente, você pode injetar variáveis em textos usando sintaxes onde sabemos que o interpretador aceita as injeções. São elas:

- aspas duplas: `""`;
- heredoc:
  ```php
<?php
echo <<<EOT
Isso realmente é um texto em PHP.
EOT;```

Com essas duas formas de escrever um texto, você pode inserir, dinamicamente, valores de variáveis. Lembra do meu exemplo anterior?

```php
<?php
$nome = 'Kaique';
$sobrenome = 'Garcia';

$nomeCompleto = "$nome $sobrenome";
var_dump($nomeCompleto); // string(Kaique Garcia)
```

Bem mais legível, não? Então pense bem antes de sair escrevendo uma série de concatenações. [No artigo anterior](https://blog.kaiquegarcia.dev/php-para-iniciantes-operadores-logicos), eu concatenei vários textos com a constante pré-definida `PHP_EOL`, mas só fiz isso porque não dá pra injetar constantes. Se você reparou bem, tem passagens que eu injetei sim variáveis em textos (pesquise por `Operador $operacao` lá).

Legal né? Enfim, por hoje é só! Um artigo bem curtinho pra ler naquela pausa para respirar, hehe. No próximo, vamos falar sobre **Operadores de Array**. Não perca, hein?

**Inté!**
