Solucionado (ver solução)
Solucionado
(ver solução)
9
respostas

Dúvida sobre echo - Separar elementos

No vídeo "Tipo String" da Aula 3, o instrutor faz um exemplo separando os elementos do comando echo usando . (ponto). Fiz um teste e separei os elementos com vírgula e funcionou. Sabem dizer quais os possíveis separadores de elementos no comando echo? Exemplo:

$doisAoCubo = 2 ** 3;
$restoDaDivisao = 10 % 3;
echo "Dois ao Cubo: ", $doisAoCubo, ".\n";
echo "Resto da Divisão: ", $restoDaDivisao, ".\n";
9 respostas

Olá Fábio, tudo certo?

Na verdade o ponto neste exemplo é literalmente um ponto final na linha. Mas o '\n' serve para ir para a próxima linha, fazendo com que o echo seguinte não continue ao lado do echo anterior, mas sim em uma linha loga abaixo?

Deu pra entender?

Qualquer dúvida estamos aí. Bons estudos!

Oi, Diego. Então, não foi isso que aconteceu. Não foi ponto final literal. Na própria aula tem a seguinte explicação na seção "O que Aprendemos": "Para concatenar uma string com uma outra variável usamos o . (ponto)" Veja: https://cursos.alura.com.br/course/php-primeiros-passos/task/54724

Agora entendi. Dá sim para concatenar com ponto ou vírgula. Ainda há outras maneiras de se fazer a concatenação:

Dá uma olhada nessa parte da documentação, é muito interessante:

https://www.php.net/manual/pt_BR/language.operators.string.php

Bons estudos!

Olá Fabio,

Esse é uma propriedade do echo, você passa vários valores separados por vírgula igual à passagem de parâmetros em uma função, então o echo escreve cada item recebido. Mas é raramente utilizado esse método com a vírgula.

Já a utilização do . é geral, não é algo relacionado ao echo, e por ser geral acaba sendo o método preferido até quando é utilizado junto do echo

Espero ter ajudado, qualquer dúvida é só falar!

Então, o ponto pode ser usado como separador em outros comandos?

Não como separador, mas como concatenador, na criação de variáveis, em outros comandos ou em qualquer outro lugar que você pode utilizar uma string.

O ponto vai servir para juntar (concatenar) duas strings.

Exemplo:

$nome = "Fabio";
$saudacao = "Olá " . $nome;

echo $saudacao

// Resultado
Olá Fabio

Então acredito que valha mais a pena usar o ponto, porque pode ser usado em mais lugares. A vírgula, por exemplo, não poderia ser usada para concatenar a variável $saudacao , certo?

solução!

Fala, Fábio. Deixa eu esclarescer aqui:

echo é uma construção de linguagem do PHP, ou seja, não é uma função propriamente dita. Por isso, não é obrigatório o uso de parentesis.

De qualquer forma, ele se assemelha a uma função, e recebe argumentos. Se você fizer isso, funciona:

echo("Minha string aqui");

Quando você separa diversas strings por vírgula, você está na verdade passando vários parâmetros para o echo, e não juntando uma única string, entende? Seria o equivalente a:

echo("Passando ", "várias", " strings");

Se você utiliza o ponto, o que você está fazendo é juntar todas as strings em uma, e essa única string é passada para o echo. Seria o equivalente a:

echo("Passando  " . "várias" . " strings");

Na prática não há diferença significativa em performance nem nada do tipo, então o uso mais comum é com o ponto para passar uma única string, mas nada te impede de utilizar vírgula caso queira, beleza?

Espero ter esclarescido. Abração e bons estudos.

Pessoal, agradeço a cada um que separou um tempo para me explicar essa questão do echo. Agora consegui entender.