I believe this is available since ZF 1.9 as a controller plugin:

http://framework.zend.com/manual/en/zend.controller.plugins.html#zend.controller.plugins.standard.puthandler

It's probably intended as a companion to Zend_Rest_Controller but it works everywhere and without overriding anything, which is nice. :)