__autoload() is a single global function, so a process can have exactly one of them. That was tolerable when an application was the only thing in the tree…
Two classes that need the same six lines and share no useful ancestor leave three bad options: copy the lines, invent a base class whose only purpose is…
Hand-rolled password storage gets the same three things wrong every time: a hash designed to be fast, a salt in its own column that is reused or truncated,…