Visualizzazione dei risultati da 1 a 3 su 3

Discussione: dimensioni di un file

  1. #1

    dimensioni di un file

    salve a tutti.

    Come posso prendere le dimensioni di un file situato su un'altro server?

    ad esempio filesize() non funziona naturalmente.

  2. #2
    ho provato anche con get_headers() ma mi s aquesto errore:

    Fatal error: Unsupported operand types

    o mi da Array

  3. #3
    leggere la dimensione di un file dall'altro server non è complesso e ci sono vari modi per farlo

    puoi innanzi tutto utilizzarle le curl facendo una richiesta di tipo HEAD (altrimenti scarica tutto il file invece di leggerne soltanto le informazioni generali)

    alternativamente puoi inviare tu la richiesta manuale ma dovresti gestire tutte le varie sfaccettature della situazione (errori di connession, comunicazione o nella risposta, redirect, file inesistente e via dicendo)

    Usando le curl qui c'è il codice, però non l'ho testato quindi non so se ci sono errori di altro genere
    codice:
    // Inizializza la richiesta
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'http://sub.example.tld/path/to/file.ext');
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'HEAD');
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_NOBODY, true);
    
    // Esegue la richiesta 
    curl_exec($ch);
    
    // Acquisisce la dimensione del file
    $fileSize = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
     
    // Chiude la connessione
    curl_close($ch);
    Nel codice l'opzione CURLOPT_NOBODY e CURLOPT_CUSTOMREQUEST impostato a HEAD si accavallano, fanno quasi la stessa cosa, però preferisco impostarli entrambi perché in passato ho avuto problemi strani
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.