Autor | Zpráva | ||
---|---|---|---|
warezov Profil |
#1 · Zasláno: 6. 1. 2011, 09:09:18
Potřeboval bych pomocí PHP vypočítat velikost souboru na serveru. například seznam.cz/index.html.
Lze to nějak jednoduše vypočítat podle počtu znaků v tom daném souboru? Děkuji |
||
Darker Profil |
#2 · Zasláno: 6. 1. 2011, 09:20:26 · Upravil/a: Darker
filesize- velikost
strlen(file_get_contents(soubor)) Mám pocit, že to vrátí to samé, ale radši to vyzkoušej |
||
warezov Profil |
#3 · Zasláno: 6. 1. 2011, 09:23:39
Zkoušel jsem to takto, ale bez výsledku.
echo "index.html" . ': ' . filesize("http://www.seznam.cz/index.html") . ' bytes'; výstup: index.html: bytes |
||
lordfrikk Profil |
#4 · Zasláno: 6. 1. 2011, 10:49:23 · Upravil/a: lordfrikk
Tady máš 2 způsoby, cURL by mělo fungovat na 99%, protože IMO častěji jej najdeš zapnuté než najdeš povoleno allow_url_fopen, které je potřeba pro první příklad.
P.S.: Jsem si jistý, že tohle funguje jen pro textové soubory, pro binární data je třeba jinačí přístup, sepíšu, jestli bude potřeba. <?php function format_size($size) { $units = array(' B', ' KB', ' MB', ' GB', ' TB'); for ($i = 0; $size >= 1024 && $i < 4; $i++) $size /= 1024; return round($size, 2).$units[$i]; } // 1. zpusob $size = strlen(file_get_contents('http://www.seznam.cz/index.html')); echo 'file_get_contents: ' . format_size($size); // 2. zpusob $ch = curl_init('http://www.seznam.cz/index.html'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); $size = strlen(curl_exec($ch)); curl_close($ch); echo '<br />cURL: ' . format_size($size); ?> |
||
Časová prodleva: 13 let
|
0