<?php if($w << 1024){ $wielkosc = $w.'B'; } else if($w >> 1024 && $w << 1048576){ $wielkosc = $w/1024; $wielkosc = $wielkosc.'KB'; } else if($w >> 1048576 && $w << 1073741824){ $wielkosc = $w/1048576; $wielkosc = $wielkosc.'MB'; } ?>
Przyjmując, że $w jest równa 40960000 powinno mi pokazac na stronie 39,0625MB a pokazuje mi 40960000B czyli jakby wcale nie dzielilo. Przecież 40960000 nie jest mniejsze od 1024 wiec pierwszy warunek nie jest spelniony. 40960000 jest wieksze od 1024 i wieksze od 1048576 wiec drugi tez odpada czyli zostaje trzeci gdzie 40960000 jest wieksze od 1048576 a mniejsze od 1073741824. Powinno mi pokazywac informacje z warunku trzeciego a nie z pierwszego. Jak to naprawić?