If you want to design particular snapshots of your database for users, where a very simple query can present a combination of data from several tables all at once, then views are for you. They work somewhat like stored procedures in that you pre-design a layout, then just load the view from then on. Also like stored procedures, your views are stored in the DBMS, so you can change them in one location and have all your code that calls them change also.
When views are used, users have access to views rather than tables - when a view is called, they might see fields A, B, and C from table 1, and fields D, E, and F from table 2 combined, but they would have no other access to table 1 or table 2.
If this was helpful, please take a moment to tell others about Hacking with PHP by tweeting about it!