As I tend to forget this all the time, a note to myself (again): substr() takes 2 parameters: start and length. substring() takes 2 parameters: start and stop. Subtle difference, yet a great impact.
A rather geeky/technical weblog, est. 2001, by Bramus
substring()
and substr()