Cara menggunakan ukuran file php (): stat gagal

Pada artikel ini, kita akan membahas cara mendapatkan ukuran file menggunakan PHP. PHP adalah bahasa skrip tujuan umum yang cocok untuk bahasa skrip server dan klien untuk pengembangan situs web. Untuk mendapatkan ukuran file, kita akan menggunakan fungsi filesize().  

Fungsi filesize() mengembalikan ukuran file dalam byte. Fungsi ini menerima nama file sebagai parameter dan mengembalikan ukuran file dalam byte jika berhasil dan Salah jika gagal.  

Sintaksis

filesize($filename)

Parameter. Fungsi filesize() di PHP hanya menerima satu parameter i. e. $filename yang menentukan nama file dari file yang ukurannya ingin Anda periksa

Contoh 1. Dalam contoh ini, kami menggunakan fungsi filesize() dengan parameter file dan mengembalikan ukuran file yang diberikan

PHP




<?php

   _

echo "The File size is: ";

 

echo

The File size is: 15
0
The File size is: 15
1
The File size is: 15
2
The File size is: 15
3

 

The File size is: 15
_5

Keluaran

The File size is: 15
_

Contoh 2. Dalam contoh ini, kami menggunakan fungsi filesize() dengan parameter file yang tidak ada kemudian mengembalikan pesan kesalahan

Saat menjalankan aplikasi, script, plugin, atau mengupload file melalui PHP, terkadang Anda akan mengalami error, apalagi jika salah satunya memiliki ukuran yang melebihi batas yang telah ditetapkan di webserver. Dalam panduan ini, Anda akan mengetahui cara mengatasi error dengan meningkatkan batas upload_max_filesize default melalui cPanel

Pertama-tama, buka cPanel → Menu perangkat lunak → Pilih Versi PHP

Cara menggunakan ukuran file php (): stat gagal

Selanjutnya, klik Options dan scroll hingga menemukan upload_max_filesize, lalu pilih nilai maksimum yang tersedia untuk paket Anda

Cara menggunakan ukuran file php (): stat gagal

Selesai. Error tersebut harus segera diatasi dengan meningkatkan batas upload_max_filesize 🚀

Jika error masih terjadi, Anda dapat menambah batas PHP lebih lanjut dengan menambahkan beberapa baris kode ke file. htaccess sesuai dengan panduan dalam artikel ini

Hai,

Saya membuat kode untuk mendapatkan ukuran file yang disimpan dalam direktori. Tapi sayangnya saya dihajar dengan kesalahan filesize(). stat gagal untuk fq. txt dan program tidak memberikan jawaban. Saya pemula di php, alangkah baiknya jika ada yang bisa menyarankan apa pun. kode saya adalah sebagai berikut

  1. $dir = "C. \Pengguna\Desktop\php";
  2. $dh = opendir($dir);
  3. sementara (($file = readdir($dh)) == BENAR)
  4. {
  5. echo "Nama filenya adalah";
  6. gema $nama = pathinfo($file,PATHINFO_FILENAME), "
    ";
  7. gema "Tipe File. ";
  8. gema $type = pathinfo($file,PATHINFO_EXTENSION), "
    ";
  9. gema "Ukuran File. ". ukuran file($file). "byte", "
    ", "
    ";
  10. echo "jalur ke file ini adalah";
  11. echo realpath($dir), "
    ", "
    ";
  12. }
  13. closedir($dh);
  14. ?>

24 Okt '12 #

0 3114

Posting balasan Anda

Masuk untuk memposting balasan Anda atau Daftar untuk mendapatkan akun gratis

A fast implementation that determines actual file size of large files (>2GB) on 32-bit PHP:

function RealFileSize($fp)
{
    $pos = 0;
    $size = 1073741824;
    fseek($fp, 0, SEEK_SET);
    while ($size > 1)
    {
        fseek($fp, $size, SEEK_CUR);

        if (fgetc($fp) === false)
        {
            fseek($fp, -$size, SEEK_CUR);
            $size = (int)($size / 2);
        }
        else
        {
            fseek($fp, -1, SEEK_CUR);
            $pos += $size;
        }
    }

    while (fgetc($fp) !== false)  $pos++;

    return $pos;
}

Input is an open file handle.  Return value is an integer for file sizes < 4GB, floating-point otherwise.

This starts out by skipping ~1GB at a time, reads a character in, repeats.  When it gets into the last GB, it halves the size whenever the read fails.  The last couple of bytes are just read in.

Some people might have concerns over this function because $pos will become a floating point number after exceeding integer limits and they know of floating point's tendencies to be inaccurate.  On most computers that correctly implement the IEEE floating point spec, $pos will be accurate out to around 9 *petabytes*.  Unless you are working with multi-petabyte files in PHP or the code is executing on strange hardware, this function is going to be more than sufficient.  Every part of this function has been carefully crafted to deal with 32-bit deficiencies.