I sort of agree that the 'zzz' format is a bit strange, to the point that I would probably avoid it altogether personally. Instead, I would just stick with 'zz' or 'z'.

I believe the most standard timezone notation is of the form "UTC-5", "UTC-05", and "UTC-05:00". As such, it might make more sense to design $asctime, et al., like so:

Code:
z    ==>  -5        +10       -3:30
zz   ==>  -05       +10       -03:30
zzz  ==>  -05:00    +10:00    -03:30

u    ==>  UTC


Then, you can use 'uz', 'uzz', or 'uzzz' to get formats like "UTC-5", "UTC-05", or "UTC-05:00", respectively. The 'u' shortcut would be handy since 'm' and 't' are already reserved for month and AM/PM.

I don't think this change is necessary, but just that it would be more consistent with standard notation.