FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Mycket flitig postare
|
Finns det något smidigt sätt att i slutet av ett PHP-skript kolla hur mycket data som skickades från skriptet (gärna inkl HTTP-headers)? D.v.s. mäta utgående trafik.
Jag tänker mig något i stil med memory_get_peak_usage(), men för trafik. Gärna motsvarande för ingående trafik också (d.v.s. HTTP-requesten från klienten och eventuell externt inhämtad information). |
||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Bara ett inlägg till!
|
Kika på output buffering.
|
|||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Har WN som tidsfördriv
|
Citat:
Kod:
// Starta buffer ob_start(); /* * Din sida */ // Bufferns innehåll $output = ob_get_contents(); // Stoppa buffer ob_end_clean(); // Storlek i bytes $size = strlen($output); // Visa echo $output; strlen() kontroller längden av en sträng, det motsvarar alltså antal bytes (oftast, kan dock bli lite fel ibland beroende på encoding). |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Supermoderator
|
Du kan använda mb_strlen istället.
__________________
Full-stack developer, free for smaller assignments |
||
![]() |
![]() |
![]() |
#5 | |||
|
||||
Bara ett inlägg till!
|
Ännu snyggare änr KarlRoos exempel är att göra en callbackfunktion och skicka med parametern chunk_size till ob_start(). På så sätt kan du minska minnesanvändningen och börja skicka data till webbläsaren fortare. Detta är extra relevant ifall du skickar stora filer genom PHP.
Citat:
|
|||
![]() |
![]() |
Svara |
|
|