ftruncate funksiýasy

ftruncate funksiýasy faýly görkezilen ölçegine çenli kesip gysgaldyar. Funksiýa birinji parametr hökmünde faýl deskriptoryny, ikinji parametr hökmünde bolsa faýlyň näçe ölçegine çenli kesip gysgaldylmalydygyny kabul edýär. Eger faýl görkezilen ölçegden uly bolsa, artykmaç maglumatlar ýitiriler. Eger faýl kiçi bolsa, ol nol baýtlar bilen doldurylar.

Sintaksis

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

Mysal

Faýly 100 baýta çenli kesip gysgaldalyň:

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

Funksiýa üstünlik ýagdaýynda true ýa-da ýalňyşlyk ýagdaýynda false gaýtarar.

Mysal

Belläp berlen ölçegde boş faýl döredeliň:

php<?php
  $file = fopen('empty.dat', 'w');
  ftruncate($file, 1024); // 1 KB ölçegli faýl döredýäris
  fclose($file);
?>

Mysal

Funksiýanyň ýerine ýetirilmeginiň netijesini barlamak:

php<?php
  $file = fopen('test.txt', 'r+');
  $res = ftruncate($file, 50);
  
  if ($res) {
    echo 'faýl üstünlikli kesip gysgaldyldy';
  } else {
    echo 'faýly kesip gysgaldymakda ýalňyşlyk';
  }
  fclose($file);
?>

Şeýlede göz aýlaň

  • faýl açýan fopen funksiýasyna,
  • faýla ýazýan fwrite funksiýasyna,
  • faýlyň ölçegini gaýtaryan filesize funksiýasyna,