There are plenty, including free php ones.
The cart and shopping channel isn't the problem, the issue is the payment gateway which captures and processes payments.
There are a few to choose from, but for the beginner, I would advise paypal as they offer cart systems for your site, payment gateway solutions at an OK-ish rate.
Once you're more experienced, you can look at others if you don't like Paypals cut, but they're all pretty much the same give or take a couple of percent. Just make sure any you choose offer full SSL certificates, which over 90% will.