3v4l.org

run code in 300+ PHP versions simultaneously
<?php function ds($dir) { try { $s = 0; foreach ($fs = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir)) as $f) { try { $s += $f->getSize(); } catch (UnexpectedValueException $e) { return $s; } } return b($s); } catch (UnexpectedValueException $e) { return 'xxxx'; } catch (RuntimeException $e) { return 'xxxx'; } } echo print_r(ds('/in/'),true);

preferences:
41.14 ms | 402 KiB | 5 Q