I need a very light weight solution for paid membership. There will be 3 levels of membership. One free and the rest are paid. I don't need all the bells and whistles of big frameworks. All I need is registration and payment handling such as monthly payments and membership upgrades. Paypal will be my last option for the payments so other payments options are welcome too.
Braintree provides braindead simple handling of subscriptions and memberships, and deals with all the payments, recurring charges, and handling. It's pretty simple to get set up, and has a very lightweight API for most languages to integrate it with your app, including PHP.
We use it for our company, and it's been reliable, with excellent support.