DEV Community

Ranieri Valença
Ranieri Valença

Posted on • Edited on

PHP: mais alguns conceitos importantes da linguagem

Tópicos

 1. Introdução
 2. Funções em PHP
       2.1. Funções
       2.2. Funções Anônimas
       2.3. Arrow Functions (Funções Flecha)
 3. Manipulação de Arquivos em PHP
       3.1. Leitura de Arquivos
       3.2. Escrita em Arquivos
       3.3. Manipulador de Arquivo e Ponteiro de Arquivo
             a. Modos de Abertura de Arquivo
       3.4. Função fclose() e fechamento de arquivos
       3.5. Função file()
       3.6. Função unlink()
 4. Manipulação de Arquivos CSV em PHP
       4.1. Função fgetcsv()
       4.2. Função str_getcsv
       4.3. Função fputcsv()
 5. Manipulação de Strings em PHP
 6. Includes e Requires
 7. Manipulação de Datas em PHP

Introdução

Neste artigo vamos explorar mais alguns conceitos e funções importantes do PHP que são amplamente utilizados quando construímos Aplicações Web com esta linguagem.


Funções em PHP

Em PHP, as funções são blocos de código reutilizáveis que podem ser chamados em diferentes partes do código para executar uma tarefa específica. Elas ajudam a organizar e modularizar o código, tornando-o mais legível e fácil de manter.

Funções

Em PHP podemos criar funções comuns com nomes específicos. Essas funções podem receber parâmetros e retornar valores, permitindo uma maior modularização e organização do código.

Exemplo de criação e chamada de função comum:

// Função que retorna a soma de dois números
function somar($a, $b) {
    return $a + $b;
}

// Chamada da função e atribuição do resultado a uma variável
$resultado = somar(5, 3);

echo $resultado; // Saída: 8
Enter fullscreen mode Exit fullscreen mode

Funções Anônimas

Uma função anônima é uma função que não possui um nome associado a ela. Elas são úteis quando você precisa de uma função temporária ou como argumento para outras funções, como em callbacks. Em PHP, as funções anônimas são criadas usando a palavra-chave function sem um nome seguido de parênteses e chaves para delimitar o bloco de código.

Exemplo de função anônima:

$add = function ($a, $b) {
    return $a + $b;
};

$result = $add(5, 3); // Chama a função anônima e atribui o resultado a $result
echo $result; // Saída: 8
Enter fullscreen mode Exit fullscreen mode

Arrow Functions (Funções Flecha)

As arrow functions foram introduzidas no PHP 7.4 e são uma forma mais concisa de definir funções anônimas com apenas uma expressão. Elas permitem que você escreva funções de forma mais sucinta usando uma sintaxe reduzida.

Exemplo de arrow function:

$add = fn($a, $b) => $a + $b;

$result = $add(5, 3);
echo $result; // Saída: 8
Enter fullscreen mode Exit fullscreen mode

Manipulação de Arquivos em PHP

PHP oferece diversas funções para a manipulação de arquivos, permitindo que você leia e escreva em arquivos, verifique informações de arquivos e diretórios, crie e exclua arquivos e diretórios, entre outras operações.

Leitura de Arquivos

Para ler o conteúdo de um arquivo em PHP, você pode utilizar a função file_get_contents() ou fopen() combinada com fread().

Exemplo de leitura de arquivo com file_get_contents():

$conteudo = file_get_contents('arquivo.txt');
echo $conteudo;
Enter fullscreen mode Exit fullscreen mode

Esta função abre o arquivo, lê seu conteúdo, fecha o arquivo e retorna o seu conteúdo.

Exemplo de leitura de arquivo com fopen() e fread():

$handle = fopen('arquivo.txt', 'r');
$conteudo = fread($handle, filesize('arquivo.txt'));
fclose($handle);
echo $conteudo;
Enter fullscreen mode Exit fullscreen mode

Escrita em Arquivos

Para escrever em um arquivo em PHP, você pode usar a função file_put_contents() ou fopen() combinada com fwrite().

Exemplo de escrita em arquivo com file_put_contents():

$conteudo = 'Este é um texto para escrever no arquivo.';
file_put_contents('arquivo.txt', $conteudo);
Enter fullscreen mode Exit fullscreen mode

A função file_put_contents() apaga o conteúdo do arquivo e o substitui pelo conteúdo que está sendo passado como argumento.

Exemplo de escrita em arquivo com fopen() e fwrite():

$handle = fopen('arquivo.txt', 'w');
$conteudo = 'Este é um texto para escrever no arquivo.';
fwrite($handle, $conteudo);
fclose($handle);
Enter fullscreen mode Exit fullscreen mode

Manipulador de Arquivo e Ponteiro de Arquivo

Quando nos exemplos anteriores utilizamos a função fopen() para abrir um arquivo em PHP, ela retorna um manipulador de arquivo, que é um recurso que representa o arquivo aberto. Esse manipulador de arquivo é usado posteriormente em outras funções de leitura e escrita para realizar operações no arquivo.

O ponteiro de arquivo é uma posição interna que indica a posição atual de leitura ou escrita no arquivo. Quando você abre um arquivo usando fopen(), o ponteiro de arquivo é posicionado no início do arquivo por padrão. À medida que você lê ou escreve no arquivo, o ponteiro de arquivo é movido para a próxima posição. Isso permite que você leia ou escreva dados em posições específicas do arquivo.

No exemplo anterior utilizamos a função filesize() para recuperar o tamanho em bytes do arquivo, de forma que lemos o arquivo completo de uma única vez. Mas também é possível utilizar a função fread() para ler parte do arquivo:

$handle = fopen('arquivo.txt', 'r');
$conteudo = fread($handle, 100); // Lê os primeiros 100 bytes do arquivo
fclose($handle);
echo $conteudo;
Enter fullscreen mode Exit fullscreen mode

Modos de Abertura de Arquivo

Ao usar a função fopen() para abrir um arquivo em PHP, você deve especificar um modo de abertura para indicar como o arquivo será manipulado. Existem diferentes modos de abertura, que determinam se o arquivo será aberto apenas para leitura, apenas para escrita, para leitura e escrita, e se o ponteiro de arquivo será posicionado no início, no final ou em outras posições do arquivo.

Alguns dos modos de abertura mais comuns são:

'r': Abre o arquivo somente para leitura. O ponteiro de arquivo é posicionado no início do arquivo (modo padrão).
'w': Abre o arquivo somente para escrita. Se o arquivo já existir, seu conteúdo será apagado. Se o arquivo não existir, ele será criado.
'a': Abre o arquivo para escrita, mas posiciona o ponteiro de arquivo no final do arquivo. Se o arquivo não existir, ele será criado.
'r+': Abre o arquivo para leitura e escrita. O ponteiro de arquivo é posicionado no início do arquivo.

Exemplo de uso de fopen() com diferentes modos:

$handleRead = fopen('arquivo.txt', 'r');
$handleWrite = fopen('arquivo.txt', 'w');
$handleAppend = fopen('arquivo.txt', 'a');
$handleReadWrite = fopen('arquivo.txt', 'r+');
Enter fullscreen mode Exit fullscreen mode

Nota importante: conforme mencionado anteriormente, abrir um arquivo em modo w irá apagar seu conteúdo caso o arquivo já exista. Portanto, tenha cuidado ao usar esse modo de abertura, já que ele pode implicar em perda de dados.

Função fclose() e fechamento de arquivos

Após abrir um manipulador de arquivo em PHP, é importante fechá-lo para que o sistema operacional tenha o recurso liberado. Naturalmente todos os manipuladores de arquivos (e outros tipos de manipuladores do tipo resource) são liberados após a execução de um script PHP, mas problemas podem acontecer caso você precise lidar novamente com arquivos que foram previamente abertos no mesmo arquivo, como por exemplo se você quiser renomeá-lo. Por isso é sempre uma boa prática fechar os manipuladores que forem abertos.

Função file()

A função file() é uma maneira conveniente de ler todo o conteúdo de um arquivo e armazená-lo em um array. Cada elemento do array representa uma linha do arquivo, incluindo os caracteres de quebra linha que existirem no final da linha:

$linhas = file('arquivo.txt');
foreach ($linhas as $linha) {
    echo $linha;
}
Enter fullscreen mode Exit fullscreen mode

Função unlink()

A função unlink() é usada para excluir um arquivo em PHP. Cuidado ao utilizar esta função, pois a exclusão é irreversível e não é possível recuperar o arquivo após a remoção.

Exemplo de uso da função unlink():

if (file_exists('arquivo.txt')) {
    unlink('arquivo.txt');
    echo 'Arquivo excluído com sucesso.';
} else {
    echo 'O arquivo não existe.';
}
Enter fullscreen mode Exit fullscreen mode

Outras funções e informações sobre manipulação de arquivos em PHP podem ser consultadas na seção correspondente do manual do PHP


Manipulação de Arquivos CSV em PHP

O formato CSV (Comma-Separated Values) é amplamente utilizado para armazenar dados tabulares, onde cada linha representa um registro e os valores são separados por vírgulas (ou outros delimitadores). Em PHP, existem funções específicas para lidar com arquivos CSV.

Função fgetcsv()

A função fgetcsv() é usada para ler uma linha de um arquivo CSV e retorná-la como um array. Ela identifica automaticamente os campos separados por vírgulas e os coloca em elementos do array. Essa leitura funciona como a função fread(), movendo o ponteiro interno do arquivo para a próxima linha. Quando a função fgetcsv() é chamada no final do arquivo, ela retorna o valor booleano false.

$handle = fopen('dados.csv', 'r');
while (($linha = fgetcsv($handle)) !== false) {
    print_r($linha);
}
fclose($handle);
Enter fullscreen mode Exit fullscreen mode

Função str_getcsv

A função str_getcsv() é semelhante à fgetcsv(), mas ela opera em uma string em vez de um arquivo. Ela analisa uma string CSV e retorna um array com os valores:

$dados = 'João,25,"São Paulo"';
$linha = str_getcsv($dados);
print_r($linha); // Saída: Array ( [0] => João [1] => 25 [2] => São Paulo )
Enter fullscreen mode Exit fullscreen mode

Função fputcsv()

A função fputcsv é usada para escrever uma linha em um arquivo CSV. Ela recebe um array como entrada e escreve os valores separados por vírgulas no arquivo:

$dados = array("João", 25, "São Paulo");
$handle = fopen('dados.csv', 'a');
fputcsv($handle, $dados);
fclose($handle);
Enter fullscreen mode Exit fullscreen mode

Manipulação de Strings em PHP

PHP possui uma variedade de funções para a manipulação de strings, permitindo que você realize tarefas como concatenação, busca, substituição, formatação, entre outras.

Exemplo de manipulação de strings:

$texto = 'Olá, mundo!';
echo strlen($texto); // Saída: 12 (tamanho da string)
echo strtoupper($texto); // Saída: OLÁ, MUNDO! (conversão para maiúsculas)
echo str_replace('mundo', 'amigo', $texto); // Saída: Olá, amigo! (substituição de texto)
Enter fullscreen mode Exit fullscreen mode

Outras funções para manipulação de strings podem ser vistas diretamente no manual do php


Includes e Requires

Em PHP, os includes e requires são utilizados para incluir o conteúdo de outros arquivos PHP no arquivo atual. Isso é útil quando você deseja reutilizar código de outros arquivos ou dividir o código em partes menores para facilitar a manutenção.

A diferença entre include e require é a forma como eles tratam erros. Se um arquivo não for encontrado no include, o PHP emitirá um aviso (warning) e continuará a execução do script. Já o require emitirá um erro fatal (fatal error) e interromperá a execução do script caso o arquivo não seja encontrado.

Exemplo de uso de include:

// arquivo1.php
$mensagem = 'Olá, mundo!';

// arquivo2.php
include 'arquivo1.php';
echo $mensagem; // Saída: Olá, mundo!
Enter fullscreen mode Exit fullscreen mode

Exemplo de uso de require:

// arquivo1.php
$mensagem = 'Olá, mundo!';

// arquivo2.php
require 'arquivo1.php';
echo $mensagem; // Saída: Olá, mundo!
Enter fullscreen mode Exit fullscreen mode

Manipulação de Datas em PHP

PHP possui diversas funções para a manipulação de datas e horários, permitindo que você trabalhe com datas, faça cálculos, formate datas em diferentes formatos, entre outras operações.

Exemplo de manipulação de datas:

$dataAtual = date('Y-m-d'); // Obtém a data atual no formato YYYY-MM-DD
echo $dataAtual;

$dataFormatada = date('d/m/Y', strtotime('2023-07-24')); // Converte uma data para o formato DD/MM/YYYY
echo $dataFormatada;
Enter fullscreen mode Exit fullscreen mode

Mais informações sobre funções relacionadas a datas em PHP podem ser encontradas no manual da linguagem.


Esses são apenas alguns dos tópicos fundamentais em PHP. Com esses recursos, você pode criar aplicações web dinâmicas, realizar operações com arquivos, manipular strings e trabalhar com datas de forma eficiente e flexível. O PHP é uma linguagem versátil e poderosa que pode ser aplicada em uma ampla variedade de cenários de desenvolvimento web. Com a prática e o aprendizado contínuo, você poderá aprimorar suas habilidades em PHP e desenvolver aplicações cada vez mais complexas e avançadas.

Top comments (0)