Zend Framework has a decent solution to auto-generating a WSDL file for a particular class.

Basically they use developer created php-doc comments to determine the correct data types.

http://framework.zend.com/manual/en/zend.soap.html

Their XML-RPC class is pretty good as well.