What about old-good CAPTCHA? There are many ways, but all are annoying for normal users.
1,234 karma · joined November 15, 2011
This should be implemented in PHP core or at least someone should write extension for it. That would solve implementation problems and add new, good feature to PHP language.