3v4l.org

run code in 500+ PHP versions simultaneously
<?php function condenseDays(string $days): string { return preg_replace( '/-\K[^,]+-/', '', str_replace( ['n,t', 'e,w', 'd,t', 'u,f', 'i,s', 't,s'], ['n-t', 'e-w', 'd-t', 'u-f', 'i-s', 't-s'], $days ) ); } echo condenseDays('mon,tue,wed,thu,fri,sat') . "\n"; echo condenseDays('tue,thu,fri,sun') . "\n"; echo condenseDays('mon,tue,wed,fri,sat,sun') . "\n"; echo condenseDays('mon,thu,sun') . "\n"; echo condenseDays('tue,wed,fri,sat') . "\n"; echo condenseDays('mon,wed,fri,sun') . "\n"; echo condenseDays('mon,tue,thu,fri,sat,sun');
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.31, 8.4.1 - 8.4.22, 8.5.0 - 8.5.7
mon-sat tue,thu-sun mon-wed,fri-sun mon-thu,sun tue-wed,fri-sat mon,wed,fri-sun mon-tue,thu-sun

preferences:
93.26 ms | 1274 KiB | 4 Q