Essentially a framework is the structure that you can choose to build your program on. It can allow you to connect to many different API's as well as determine the structure of your own application. I use the Zend Framework. It's not the easiest to learn, but certainly has everything you need for a great application. I would suggest going through the QuickStart guide on the site to get the ball rolling with this. It uses Model-View-Controller which is essential in my opinion. Once you have it configured, it makes things extremely easier!
Other frameworks include CodeIgniter and Symfony. Some like CodeIgniter for its smaller footprint. It's all a matter of preference. Whichever you pick be sure to use the documentation on the sites as it is essential to understanding how best to use it. Also, don't be scared to peak at the code every once in a while just to get a better understanding of how things work.