I was presented with a project where the client wanted a form that would accept credit card payments via paypal. I could either write it in PHP or Java. While I am a big fan of both languages I felt in this instance that PHP was the most time efficient route. However, PayPal doesn't offer an API for PHP. Only Java and .NET. As to not be discouraged I decided to spend a little time trying to come with a custom validator that would handle the validation of the credit card validation.::Warning::
My use case was very specific. I only needed to authorize credit card sales. Basically their simpliest form of transations. Since all the applications that I write now are us the Zend Framework I was able to reduce "inline-code" by creating a custom validator that I assign to my preValidation method inside of the model. :: I worked on this concept with Jeremy Kendall :: There is definitely room for improvement, but this is might be helpful to others. For example, the paypal options should really not be declared as Zend_Config instance, but checked for an instance of Zend_config and then set as an array with the toArray method.