Função ftruncate

A função ftruncate trunca um arquivo para um tamanho especificado. O primeiro parâmetro da função é um descritor de arquivo, e o segundo é o tamanho para o qual o arquivo deve ser truncado. Se o arquivo fosse maior que o tamanho especificado, os dados extras serão perdidos. Se o arquivo fosse menor, ele será preenchido com bytes nulos.

Sintaxe

phpftruncate(resource $handle, int $size): bool

Exemplo

Vamos truncar um arquivo para 100 bytes:

php<?php
  $file = fopen('example.txt', 'r+');
  ftruncate($file, 100);
  fclose($file);
?>

A função retornará true em caso de sucesso ou false em caso de erro.

Exemplo

Vamos criar um arquivo vazio de um tamanho especificado:

php<?php
  $file = fopen('empty.dat', 'w');
  ftruncate($file, 1024); // cria um arquivo de 1 KB
  fclose($file);
?>

Exemplo

Verificando o resultado da execução da função:

php<?php
  $file = fopen('test.txt', 'r+');
  $res = ftruncate($file, 50);
  
  if ($res) {
    echo 'arquivo truncado com sucesso';
  } else {
    echo 'erro ao truncar o arquivo';
  }
  fclose($file);
?>

Veja também

  • a função fopen,
    que abre um arquivo
  • a função fwrite,
    que escreve em um arquivo
  • a função filesize,
    que retorna o tamanho do arquivo