Good sleuthing.

I, in the meantime, am having trouble figuring out why implode() includes the CR/LF on the final element and how to stop it doing that.

matigo.ca.